commit
77e36be0b5
32 changed files with 710 additions and 13 deletions
6
README.md
Normal file
6
README.md
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
rome
|
||||||
|
====
|
||||||
|
|
||||||
|
ROME is a set of RSS and Atom Utilities for Java. It makes it easy to work in Java with most syndication formats: RSS 0.90, RSS 0.91 Netscape, RSS 0.91 Userland, RSS 0.92, RSS 0.93, RSS 0.94, RSS 1.0, RSS 2.0, Atom 0.3, Atom 1.0
|
||||||
|
|
||||||
|
More Information: http://rometools.github.io/rome-modules/
|
68
pom.xml
68
pom.xml
|
@ -8,10 +8,19 @@
|
||||||
<version>1.5-SNAPSHOT</version>
|
<version>1.5-SNAPSHOT</version>
|
||||||
<name>rome-modules</name>
|
<name>rome-modules</name>
|
||||||
<description>Plugin collection for the ROME RSS and Atom Utilities</description>
|
<description>Plugin collection for the ROME RSS and Atom Utilities</description>
|
||||||
<url>http://www.rometools.org</url>
|
<url>http://rometools.github.io/rome-modules/</url>
|
||||||
|
<organization>
|
||||||
|
<name>ROME Project</name>
|
||||||
|
<url>https://github.com/rometools/</url>
|
||||||
|
</organization>
|
||||||
<issueManagement>
|
<issueManagement>
|
||||||
<url>https://rometools.jira.com/secure/IssueNavigator.jspa</url>
|
<url>https://github.com/rometools/rome-modules/issues</url>
|
||||||
</issueManagement>
|
</issueManagement>
|
||||||
|
<scm>
|
||||||
|
<connection>scm:git:git@github.com:rometools/rome-modules.git</connection>
|
||||||
|
<developerConnection>scm:git:git@github.com:rometools/rome-modules.git</developerConnection>
|
||||||
|
<url>https://github.com/rometools/rome-modules/</url>
|
||||||
|
</scm>
|
||||||
<developers>
|
<developers>
|
||||||
<developer>
|
<developer>
|
||||||
<id>kebernet</id>
|
<id>kebernet</id>
|
||||||
|
@ -26,11 +35,6 @@
|
||||||
<distribution>repo</distribution>
|
<distribution>repo</distribution>
|
||||||
</license>
|
</license>
|
||||||
</licenses>
|
</licenses>
|
||||||
<scm>
|
|
||||||
<connection>scm:svn:https://rometools.jira.com/svn/MODULES/trunk</connection>
|
|
||||||
<developerConnection>scm:svn:https://rometools.jira.com/svn/MODULES/trunk</developerConnection>
|
|
||||||
<url>https://rometools.jira.com/source/browse/MODULES</url>
|
|
||||||
</scm>
|
|
||||||
<repositories>
|
<repositories>
|
||||||
<repository>
|
<repository>
|
||||||
<id>maven2-repository.dev.java.net</id>
|
<id>maven2-repository.dev.java.net</id>
|
||||||
|
@ -74,11 +78,30 @@
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-resources-plugin</artifactId>
|
<artifactId>maven-resources-plugin</artifactId>
|
||||||
<version>2.2</version>
|
<version>2.6</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<encoding>${project.build.sourceEncoding}</encoding>
|
<encoding>${project.build.sourceEncoding}</encoding>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-site-plugin</artifactId>
|
||||||
|
<version>3.3</version>
|
||||||
|
<configuration>
|
||||||
|
<port>9000</port>
|
||||||
|
<tempWebappDirectory>${basedir}/target/site/tempdir</tempWebappDirectory>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-scm-publish-plugin</artifactId>
|
||||||
|
<version>1.0-beta-2</version>
|
||||||
|
<configuration>
|
||||||
|
<scmBranch>gh-pages</scmBranch>
|
||||||
|
<pubScmUrl>scm:git:git@github.com:rometools/rome-modules.git</pubScmUrl>
|
||||||
|
<content>${project.build.directory}/site</content>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
<profiles>
|
<profiles>
|
||||||
|
@ -148,4 +171,33 @@
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
</properties>
|
</properties>
|
||||||
|
<reporting>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-project-info-reports-plugin</artifactId>
|
||||||
|
<version>2.6</version>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-javadoc-plugin</artifactId>
|
||||||
|
<version>2.9</version>
|
||||||
|
<reportSets>
|
||||||
|
<reportSet>
|
||||||
|
<reports>
|
||||||
|
<report>javadoc</report>
|
||||||
|
<report>test-javadoc</report>
|
||||||
|
</reports>
|
||||||
|
</reportSet>
|
||||||
|
<reportSet>
|
||||||
|
<id>aggregate</id>
|
||||||
|
<inherited>false</inherited>
|
||||||
|
<reports>
|
||||||
|
<report>aggregate</report>
|
||||||
|
</reports>
|
||||||
|
</reportSet>
|
||||||
|
</reportSets>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</reporting>
|
||||||
</project>
|
</project>
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
|
|
||||||
http://activitystrea.ms/schema/1.0/activity-schema-02.html
|
|
||||||
http://activitystrea.ms/spec/1.0/atom-activity-02.html
|
|
|
@ -1 +0,0 @@
|
||||||
http://www.ietf.org/rfc/rfc4685.txt
|
|
|
@ -1 +0,0 @@
|
||||||
http://portablecontacts.net/draft-spec.html
|
|
52
src/site/apt/A9OpenSearch.apt
Normal file
52
src/site/apt/A9OpenSearch.apt
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
-----
|
||||||
|
A9 OpenSearch
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:25:45.000
|
||||||
|
-----
|
||||||
|
|
||||||
|
A9 OpenSearch
|
||||||
|
|
||||||
|
This plug in is for use with {{{http://www.opensearch.org/}OpenSearch.org}} results.
|
||||||
|
|
||||||
|
The latest version is 0.1 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndFeed feed = new SyndFeedImpl();
|
||||||
|
feed.setFeedType(feedType);
|
||||||
|
|
||||||
|
// Add the opensearch module, you would get information like totalResults from the
|
||||||
|
// return results of your search
|
||||||
|
List mods = feed.getModules();
|
||||||
|
OpenSearchModule osm = new OpenSearchModuleImpl();
|
||||||
|
osm.setItemsPerPage(1);
|
||||||
|
osm.setStartIndex(1);
|
||||||
|
osm.setTotalResults(1024);
|
||||||
|
osm.setItemsPerPage(50);
|
||||||
|
|
||||||
|
OSQuery query = new OSQuery();
|
||||||
|
query.setRole("superset");
|
||||||
|
query.setSearchTerms("Java Syndication");
|
||||||
|
query.setStartPage(1);
|
||||||
|
osm.addQuery(query);
|
||||||
|
|
||||||
|
Link link = new Link();
|
||||||
|
link.setHref("http://www.bargainstriker.com/opensearch-description.xml");
|
||||||
|
link.setType("application/opensearchdescription+xml");
|
||||||
|
osm.setLink(link);
|
||||||
|
|
||||||
|
mods.add(osm);
|
||||||
|
|
||||||
|
feed.setModules(mods);
|
||||||
|
// end add module
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.1
|
||||||
|
|
||||||
|
Initial move to the ROME project.
|
||||||
|
|
32
src/site/apt/Content.apt
Normal file
32
src/site/apt/Content.apt
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
-----
|
||||||
|
Content
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:18:31.894
|
||||||
|
-----
|
||||||
|
|
||||||
|
Content
|
||||||
|
|
||||||
|
This plug in is for use content:encoded in feeds.
|
||||||
|
|
||||||
|
The latest version is 0.4 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndFeedInput input = new SyndFeedInput();
|
||||||
|
SyndFeed syndfeed = input.build(new XmlReader(feed.toURL()));
|
||||||
|
|
||||||
|
Module module = syndfeed.getModule("http://purl.org/rss/1.0/modules/content/");
|
||||||
|
ContentModule content = (ContentModule) module;
|
||||||
|
|
||||||
|
Iterator it = content.getEncodeds().iterator();
|
||||||
|
System.out.println( it.next() );
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.4
|
||||||
|
|
||||||
|
Initial move to the ROME project.
|
36
src/site/apt/CreativeCommons.apt
Normal file
36
src/site/apt/CreativeCommons.apt
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
-----
|
||||||
|
Creative Commons
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:19:51.376
|
||||||
|
-----
|
||||||
|
|
||||||
|
Creative Commons
|
||||||
|
|
||||||
|
This plug in is for use with feeds from Creative Commons license.
|
||||||
|
|
||||||
|
This module provides a unified rights and license system for both the RSS2/Atom and RSS/RDF namespace. However, if you wish to <<generate>> RDF/RSS feeds, you need to use a CVS build of ROME (or a version higher than 0.8).
|
||||||
|
|
||||||
|
The latest version is 0.2 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
CreativeCommons commons = new CreativeCommonsImpl();
|
||||||
|
commons.setLicense( new License[]{ License.NONCOMMERCIAL } );
|
||||||
|
// Note, you do not have to setAllLicenses right now. When the RSS1 functionality is
|
||||||
|
// added, this will be required at the Feed level only.
|
||||||
|
ArrayList modules = new ArrayList()
|
||||||
|
modules.add( commons );
|
||||||
|
syndEntry.setModules( commons );
|
||||||
|
|
||||||
|
//Alternately, to get the module:
|
||||||
|
CreativeCommons commons = (CreativeCommons) syndFeed.getModule( CreativeCommons.URI );
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.2
|
||||||
|
|
||||||
|
Initial release from ROME.
|
46
src/site/apt/GeoRSS.apt
Normal file
46
src/site/apt/GeoRSS.apt
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
-----
|
||||||
|
GeoRSS
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:15:01.880
|
||||||
|
-----
|
||||||
|
|
||||||
|
GeoRSS
|
||||||
|
|
||||||
|
This Rome plugin is for adding location information to RSS/Atom.
|
||||||
|
|
||||||
|
The latest version is 0.1 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndFeedInput input = new SyndFeedInput();
|
||||||
|
SyndFeed feed = input.build(new XmlReader(new URL("http://www.geonames.org/recent-changes.xml")));
|
||||||
|
|
||||||
|
List<SyndEntry>; entries = feed.getEntries();
|
||||||
|
for (SyndEntry entry : entries) {
|
||||||
|
GeoRSSModule geoRSSModule = GeoRSSUtils.getGeoRSS(entry);
|
||||||
|
System.out.println(entry.getTitle() + " : lat="
|
||||||
|
+ geoRSSModule.getLatitude() + ",lng="
|
||||||
|
+ geoRSSModule.getLongitude() + ", desc="
|
||||||
|
+ entry.getDescription().getValue() + "; time="
|
||||||
|
+ entry.getPublishedDate());
|
||||||
|
}
|
||||||
|
|
||||||
|
//to generate a GeoRSS item
|
||||||
|
|
||||||
|
GeoRSSModule geoRSSModule = new W3CGeoModuleImpl();
|
||||||
|
//GeoRSSModule geoRSSModule = new SimpleModuleImpl();
|
||||||
|
geoRSSModule.setLatitude(47.0);
|
||||||
|
geoRSSModule.setLongitude(9.0);
|
||||||
|
entry.getModules().add(geoRSSModule);
|
||||||
|
+------+
|
||||||
|
|
||||||
|
More information here: {{{http://georss.geonames.org/}http://georss.geonames.org/}}
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.1
|
||||||
|
|
||||||
|
Initial Releas from ROME
|
37
src/site/apt/GoogleBase.apt
Normal file
37
src/site/apt/GoogleBase.apt
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
-----
|
||||||
|
Google Base
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:17:31.435
|
||||||
|
-----
|
||||||
|
|
||||||
|
Google Base
|
||||||
|
|
||||||
|
This plug in is for use with Google Base RSS/Atom Extensions
|
||||||
|
|
||||||
|
The latest version is 0.2 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndEntry entry = new SyndEntryImpl();
|
||||||
|
// set up the entry...
|
||||||
|
Vehicle vehicle = new GoogleBaseImpl();
|
||||||
|
vehicle.setMake("Honda");
|
||||||
|
vehicle.setModel("Insight");
|
||||||
|
vehicle.setYear( new Year("2000"));
|
||||||
|
List modules = new ArrayList();
|
||||||
|
modules.add( vehicle );
|
||||||
|
entry.setModules( modules );
|
||||||
|
|
||||||
|
//Optionally, to get Google Base information from a Feed:
|
||||||
|
Article article = entry.getModule( "http://base.google.com/ns/1.0" );
|
||||||
|
System.out.println( article.getPages() );
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.2
|
||||||
|
|
||||||
|
Initial release from ROME project.
|
46
src/site/apt/IPhotoPhotocasting.apt
Normal file
46
src/site/apt/IPhotoPhotocasting.apt
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
-----
|
||||||
|
iPhoto Photocasting
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:24:08.864
|
||||||
|
-----
|
||||||
|
|
||||||
|
iPhoto Photocasting
|
||||||
|
|
||||||
|
This plug in is for use with iPhoto Photocast listings.
|
||||||
|
|
||||||
|
This module will read and write photocast feeds "properly". Be advised, however, that an iPhoto photocast feed will not pass a FeedValidator test as they are not properly namespaced. If you are wanting to publish, rather than read, consider using the {{{./MediaRSS.html}MediaRSS (modules)}} plug in instead. iPhoto will also read {{{./MediaRSS.html}MediaRSS (modules)}} (Flickr Photostream) feeds as well.
|
||||||
|
|
||||||
|
The latest version is 0.2 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndFeed feed = input.build( new File( "/foo.rss" ) ) );
|
||||||
|
List entries = feed.getEntries();
|
||||||
|
for( int i =0; i < entries.size() ; i++ ){
|
||||||
|
System.out.println( ((SyndEntry)entries.get(i)).getModule( PhotocastModule.URI ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
// or to create a photocast module:
|
||||||
|
|
||||||
|
SyndFeed myFeed = new SyndFeedImpl();
|
||||||
|
myFeed.getModules().add( new PhotocastModuleImpl() );
|
||||||
|
// you need this as a placeholder so the version gets in the feed.
|
||||||
|
|
||||||
|
SyndEntry myEntry = new SyndEntryImpl();
|
||||||
|
PhotocastModule pm = new PhotocastModuleImpl();
|
||||||
|
pm.setUrl( new URL("http://foo.com/img.jpg" ) );
|
||||||
|
pm.setThumnail( new URL("http://foo.com/img-small.jpg" ) );
|
||||||
|
pm.setCropDate( new Date() );
|
||||||
|
pm.setPhotoDate( new Date() );
|
||||||
|
pm.setMetaData( new PhotoDate(), "Some comments that I think always get ignored." );
|
||||||
|
myEntry.getModules().add( pm );
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes:
|
||||||
|
|
||||||
|
**0.2
|
||||||
|
|
||||||
|
Initial move to the ROME project.
|
49
src/site/apt/ITunesPodcasting.apt
Normal file
49
src/site/apt/ITunesPodcasting.apt
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
-----
|
||||||
|
iTunes Podcasting
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:12:32.907
|
||||||
|
-----
|
||||||
|
|
||||||
|
iTunes Podcasting
|
||||||
|
|
||||||
|
This plug in is for use with iTunes Music Service podcast listings.
|
||||||
|
|
||||||
|
The latest version is 0.4 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndFeedInput input = new SyndFeedInput();
|
||||||
|
SyndFeed syndfeed = input.build(new XmlReader(feed.toURL()));
|
||||||
|
|
||||||
|
Module module = syndfeed.getModule("http://www.itunes.com/dtds/podcast-1.0.dtd");
|
||||||
|
FeedInformation feedInfo = (FeedInformation) module;
|
||||||
|
|
||||||
|
System.out.println( feedInfo.getImage() );
|
||||||
|
System.out.println( feedInfo.getCategory() );
|
||||||
|
|
||||||
|
// Or to create a feed..
|
||||||
|
|
||||||
|
ArrayList modules = new ArrayList();
|
||||||
|
EntryInformation e = new EntryInformationImpl();
|
||||||
|
e.setDuration( new Duration( 10000 ) );
|
||||||
|
modules.add( e );
|
||||||
|
syndEntry.setModules( modules );
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.4
|
||||||
|
|
||||||
|
* Corrected some Feed vs Item attribute issue.
|
||||||
|
|
||||||
|
* Keywords now comma separated instead of space.
|
||||||
|
|
||||||
|
[]
|
||||||
|
|
||||||
|
**0.3
|
||||||
|
|
||||||
|
* Added support for the "other" case of podcasts. It will now correctly parse all lowercase URIs as wells as the original mixed case URIs All generated feeds
|
||||||
|
use the lowercase URI. Fixed some entity problems related to the apple summary tag.
|
48
src/site/apt/MediaRSS.apt
Normal file
48
src/site/apt/MediaRSS.apt
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
-----
|
||||||
|
MediaRSS
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-10-18 05:47:39.741
|
||||||
|
-----
|
||||||
|
|
||||||
|
MediaRSS
|
||||||
|
|
||||||
|
This plugin is for use with Yahoo! MediaRSS/Flickr Photostreams
|
||||||
|
|
||||||
|
The latest version is 0.1 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndFeed feed = input.build( myRSSFile );
|
||||||
|
List entries = feed.getEntries();
|
||||||
|
for( int i = 0; i < entries.size(); i++ ){
|
||||||
|
System.out.println( ((SyndEntry) entries.get(i)).getModule( MediaModule.URI ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
//Alternatively, to add a media item to an entry:
|
||||||
|
|
||||||
|
MediaContent[] contents = new MediaContent[1];
|
||||||
|
MediaContent myItem = new MediaContent( new UrlReference("http://me.com/movie.mpg") );
|
||||||
|
contents[0] = myItem();
|
||||||
|
Metadata md = new Metadata();
|
||||||
|
Thumbnail[] thumbs = new Thumbnail[2];
|
||||||
|
thumbs[0] = new Thumbnail( new URL("http://me.com/movie1.jpg") );
|
||||||
|
thumbs[1] = new Thumbnail( new URL("http://me.com/movie2.jpg") );
|
||||||
|
md.setThumbnail( thumbs );
|
||||||
|
myItem.setMetadata( md );
|
||||||
|
MediaEntryModuleImpl module = new MediaEntryModuleImpl();
|
||||||
|
module.setMediaContents( contents );
|
||||||
|
mySyndEntry.getModules().add( module );
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.2.1
|
||||||
|
|
||||||
|
Bugfix for metadata on MediaGroups.
|
||||||
|
|
||||||
|
**0.1
|
||||||
|
|
||||||
|
Initial release from ROME.
|
47
src/site/apt/MicrosoftSimpleListExtensions.apt
Normal file
47
src/site/apt/MicrosoftSimpleListExtensions.apt
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
-----
|
||||||
|
Microsoft Simple List Extensions
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:27:04.351
|
||||||
|
-----
|
||||||
|
|
||||||
|
Microsoft Simple List Extensions
|
||||||
|
|
||||||
|
This plug in is for use with feeds ith Microsoft Simple List Extensions.
|
||||||
|
|
||||||
|
Note you need to use the current CVS version of ROME or 0.9 when available.
|
||||||
|
|
||||||
|
The latest version is 0.1 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SimpleListExtension sle = (SimpleListExtension) feed.getModule( SimpleListExtension.URI );
|
||||||
|
System.out.println( sle );
|
||||||
|
Group[] groups = sle.getGroupFields();
|
||||||
|
System.out.println( groups[0].getLabel() );
|
||||||
|
|
||||||
|
//You can use the SleUtility class to do sorting and grouping:
|
||||||
|
|
||||||
|
List sortedEntries = SleUtility.sort( feed.getEntries(), sle.getSortFields()[1], true );
|
||||||
|
SyndEntry entry = (SyndEntry) sortedEntries.get( 0 );
|
||||||
|
|
||||||
|
//You can also Group or Sort and Group
|
||||||
|
|
||||||
|
List sortedAndGroupedEntries = SleUtility.sortAndGroup( feed.getEntries, sle.getGroupFields(), sle.getSortFields()[0], false );
|
||||||
|
|
||||||
|
// If you change, for instance, module values on a feed and want to reinitialize it for
|
||||||
|
// grouping and sorting...
|
||||||
|
|
||||||
|
SleUtility.initializeForSorting( feed );
|
||||||
|
|
||||||
|
// Be aware, this is a VERY heavy operation and should not be used frequently.
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.1
|
||||||
|
|
||||||
|
Initial release from ROME.
|
||||||
|
|
37
src/site/apt/MicrosoftSimpleSharingExtensions.apt
Normal file
37
src/site/apt/MicrosoftSimpleSharingExtensions.apt
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
-----
|
||||||
|
Microsoft Simple Sharing Extensions
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:28:45.289
|
||||||
|
-----
|
||||||
|
|
||||||
|
Microsoft Simple Sharing Extensions
|
||||||
|
|
||||||
|
This ROME module supports Microsoft Simple Sharing Extensions, an RSS and {{{../opml/index.html}OPML}} extension designed to support data synchronization between bi\-directional feeds.
|
||||||
|
|
||||||
|
The latest version is 0.1 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndFeedInput input = new SyndFeedInput();
|
||||||
|
SyndFeed syndfeed = input.build(new XmlReader(feed.toURL()));
|
||||||
|
|
||||||
|
List entries = syndfeed.getEntries();
|
||||||
|
Iterator it = entries.iterator();
|
||||||
|
|
||||||
|
for (int id = 101; it.hasNext() && id <= 113; id++) {
|
||||||
|
SyndEntry entry = (SyndEntry) it.next();
|
||||||
|
Sync sync = (Sync) entry.getModule(SSEModule.SSE_SCHEMA_URI);
|
||||||
|
assertEquals(String.valueOf(id), sync.getId());
|
||||||
|
|
||||||
|
History history = sync.getHistory();
|
||||||
|
assertNotNull(history);
|
||||||
|
|
||||||
|
Date when = history.getWhen();
|
||||||
|
assertNotNull(when);
|
||||||
|
Date testDate = DateParser.parseRFC822("Fri, 6 Jan 2006 19:24:09 GMT");
|
||||||
|
assertEquals(testDate, when);
|
||||||
|
}
|
||||||
|
+------+
|
38
src/site/apt/Slash.apt
Normal file
38
src/site/apt/Slash.apt
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
-----
|
||||||
|
Slash
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:16:18.857
|
||||||
|
-----
|
||||||
|
|
||||||
|
Slash
|
||||||
|
|
||||||
|
This plug in is for use with feeds from Slash\-based weblogs.
|
||||||
|
|
||||||
|
The latest version is 0.2 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndEntry entry = new SyndEntryImpl();
|
||||||
|
// set up the entry...
|
||||||
|
Slash slash = new SlashImpl();
|
||||||
|
slash.setComments( new Integer( 12 ) );
|
||||||
|
slash.setDepartment( "look-another-rome-plugin" );
|
||||||
|
slash.setSection("code");
|
||||||
|
slash.setHitParade( new Integer[] { new Integer(12), new Integer(0) } );
|
||||||
|
List modules = new ArrayList();
|
||||||
|
modules.add( slash );
|
||||||
|
entry.setModules( modules );
|
||||||
|
|
||||||
|
//Optionally, to get Slash information from a Feed:
|
||||||
|
Slash slash = entry.getModule( Slash.URI );
|
||||||
|
System.out.println( slash.getComments() );
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.2
|
||||||
|
|
||||||
|
Initial release from ROME.
|
36
src/site/apt/Weather.apt
Normal file
36
src/site/apt/Weather.apt
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
-----
|
||||||
|
Weather
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:30:00.759
|
||||||
|
-----
|
||||||
|
|
||||||
|
Weather
|
||||||
|
|
||||||
|
This plug in is for use the {{{http://developer.yahoo.com/weather/}Yahoo! Weather service}}.
|
||||||
|
|
||||||
|
The latest version is 0.1 available.
|
||||||
|
|
||||||
|
*Sample Usage
|
||||||
|
|
||||||
|
+------+
|
||||||
|
SyndFeed feed = input.build( ... );
|
||||||
|
YWeatherFeedModule yfeed = (YWeatherFeedModule) feed.getModule( YWeatherFeedModule.URI );
|
||||||
|
System.out.println( yfeed.getLocation().getCity() );
|
||||||
|
SyndEntry entry = (SyndEntry) feed.getEntries().get(0);
|
||||||
|
YWeatherEntryModule yentry = (YWeatherEntryModule) entry.getModule( YWeatherEntryModule.URI );
|
||||||
|
System.out.println( yentry.getForecasts()[0].getHigh() );
|
||||||
|
|
||||||
|
//Optionally, to add Weather information to a feed:
|
||||||
|
SyndEntry entry = new SyndEntryImpl();
|
||||||
|
YWeatherEntryModule yentry = new YWeatherModuleImpl();
|
||||||
|
yentry.setCondition( Condition("Partly Cloudy", ConditionCode.PARTLY_CLOUDY, 65, new Date() ) );
|
||||||
|
entry.getModules.add(yentry);
|
||||||
|
+------+
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**0.1
|
||||||
|
|
||||||
|
Initial release from ROME.
|
101
src/site/apt/index.apt
Normal file
101
src/site/apt/index.apt
Normal file
|
@ -0,0 +1,101 @@
|
||||||
|
-----
|
||||||
|
Home
|
||||||
|
-----
|
||||||
|
mkurz
|
||||||
|
-----
|
||||||
|
2011-08-16 05:35:31.783
|
||||||
|
-----
|
||||||
|
|
||||||
|
The ROME Modules Subproject.
|
||||||
|
|
||||||
|
The ROME Modules project is an effort to roll up contributed module support into a single distribution for users.
|
||||||
|
|
||||||
|
*Current modules in the subproject include:
|
||||||
|
|
||||||
|
* {{{./ITunesPodcasting.html}iTunes Podcasting (modules)}} – Apples extensions for listing in the iTunes podcast directory.
|
||||||
|
|
||||||
|
* {{{./GeoRSS.html}GeoRSS (modules)}} – For adding location information to RSS/Atom.
|
||||||
|
|
||||||
|
* {{{./Slash.html}Slash (modules)}} – Used by Slash\-based blogs.
|
||||||
|
|
||||||
|
* {{{./GoogleBase.html}Google Base (modules)}} – For working with the Google Base types and custom tagsets.
|
||||||
|
|
||||||
|
* {{{./Content.html}Content (modules)}} – For using content:encoded tags.
|
||||||
|
|
||||||
|
* {{{./CreativeCommons.html}Creative Commons (modules)}} – A unified module for working with the RDF and RSS/Atom Creative Commons License information.
|
||||||
|
|
||||||
|
* {{{./MediaRSS.html}Yahoo! MediaRSS}} – For working with Yahoo! MediaRSS feeds (and Flickr Photostreams)
|
||||||
|
|
||||||
|
* {{{./IPhotoPhotocasting.html}iPhoto Photocasting (modules)}} – For working with Apple iPhoto Photocasts
|
||||||
|
|
||||||
|
* {{{./A9OpenSearch.html}A9 OpenSearch (modules)}} – For working with Amazon/OpenSearch.org results.
|
||||||
|
|
||||||
|
* {{{./MicrosoftSimpleListExtensions.html}Microsoft Simple List Extensions (modules)}} – for sorting and grouping entries.
|
||||||
|
|
||||||
|
* {{{./MicrosoftSimpleSharingExtensions.html}Microsoft Simple Sharing Extensions (modules)}} – for synchronizing across bi\-directional RSS and {{{./index.html}OPML}} feeds.
|
||||||
|
|
||||||
|
* {{{./Weather.html}Yahoo! Weather}} – For use with the Yahoo Weather API
|
||||||
|
|
||||||
|
[]
|
||||||
|
|
||||||
|
*Get it.
|
||||||
|
|
||||||
|
The 0.3.2 release of modules.jar (which contains all the above modules) is available.
|
||||||
|
|
||||||
|
*Downloads
|
||||||
|
|
||||||
|
* {{{./rome\-modules\-1.0.jar}rome\-modules\-1.0.jar}}
|
||||||
|
|
||||||
|
* {{{./modules\-0.3.2\-javadoc.jar}modules\-0.3.2\-javadoc.jar}}
|
||||||
|
|
||||||
|
* {{{./modules\-0.3.2.jar}modules\-0.3.2.jar}}
|
||||||
|
|
||||||
|
* {{{./modules\-0.3.1.jar}modules\-0.3.1.jar}}
|
||||||
|
|
||||||
|
* {{{./modules\-0.3.1\-javadoc.jar}modules\-0.3.1\-javadoc.jar}}
|
||||||
|
|
||||||
|
* {{{./modules\-0.3.1\-sources.jar}modules\-0.3.1\-sources.jar}}
|
||||||
|
|
||||||
|
* {{{./modules\-0.3\-sources.jar}modules\-0.3\-sources.jar}}
|
||||||
|
|
||||||
|
* {{{./modules\-0.3.2\-sources.jar}modules\-0.3.2\-sources.jar}}
|
||||||
|
|
||||||
|
* {{{./modules\-0.3.jar}modules\-0.3.jar}}
|
||||||
|
|
||||||
|
* {{{./modules\-0.3\-javadoc.jar}modules\-0.3\-javadoc.jar}}
|
||||||
|
|
||||||
|
[]
|
||||||
|
|
||||||
|
Please don't use modules\-0.3.jar. It had errors in the packaging which have been fixed in modules\-0.3.1.jar and subsequent releases
|
||||||
|
|
||||||
|
See individual module sites for information.
|
||||||
|
|
||||||
|
*Changes
|
||||||
|
|
||||||
|
**1.0 \- released 24 February 2011
|
||||||
|
|
||||||
|
Finalized 1.0 release.
|
||||||
|
|
||||||
|
**0.3.2 \- released 30 Jan 2009
|
||||||
|
|
||||||
|
* {{{http://java.net/jira/browse/ROME\-122}http://java.net/jira/browse/ROME\-122}}
|
||||||
|
|
||||||
|
[]
|
||||||
|
|
||||||
|
*General Guidelines for modules:
|
||||||
|
|
||||||
|
This is intended to serve as a guide for contributions as well as a hint for users working with the modules.
|
||||||
|
|
||||||
|
* Modules are packaged in com.sun.syndication.feed.module.\[Module Name\].
|
||||||
|
|
||||||
|
* Modules contain a com.sun.syndication.feed.module.\[Module Name\].Module.URI reference for retrieval from ROME Synd\* classes.
|
||||||
|
|
||||||
|
* Modules contain a com.sun.syndication.feed.module.\[Module Name\].ModuleImpl that is a concrete implementation.
|
||||||
|
|
||||||
|
* Modules contain a com.sun.syndication.feed.module.\[Module Name\].types package that holds any other datatypes needed for the module.
|
||||||
|
Many of these are simple immutable types to simplify clone() and copyFrom()
|
||||||
|
|
||||||
|
* Modules contain a com.sun.syndication.feed.module.\[Module Name\].io package with parsers and generators.
|
||||||
|
|
||||||
|
[]
|
||||||
|
|
0
src/site/resources/.nojekyll
Normal file
0
src/site/resources/.nojekyll
Normal file
8
src/site/resources/css/site.css
Normal file
8
src/site/resources/css/site.css
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
h1 {
|
||||||
|
padding: 4px 4px 4px 6px;
|
||||||
|
border: 1px solid #999;
|
||||||
|
color: #900;
|
||||||
|
background-color: #ddd;
|
||||||
|
font-weight:900;
|
||||||
|
font-size: x-large;
|
||||||
|
}
|
BIN
src/site/resources/images/romelogo.png
Normal file
BIN
src/site/resources/images/romelogo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 11 KiB |
BIN
src/site/resources/modules-0.3-javadoc.jar
Normal file
BIN
src/site/resources/modules-0.3-javadoc.jar
Normal file
Binary file not shown.
BIN
src/site/resources/modules-0.3-sources.jar
Normal file
BIN
src/site/resources/modules-0.3-sources.jar
Normal file
Binary file not shown.
BIN
src/site/resources/modules-0.3.1-javadoc.jar
Normal file
BIN
src/site/resources/modules-0.3.1-javadoc.jar
Normal file
Binary file not shown.
BIN
src/site/resources/modules-0.3.1-sources.jar
Normal file
BIN
src/site/resources/modules-0.3.1-sources.jar
Normal file
Binary file not shown.
BIN
src/site/resources/modules-0.3.1.jar
Normal file
BIN
src/site/resources/modules-0.3.1.jar
Normal file
Binary file not shown.
BIN
src/site/resources/modules-0.3.2-javadoc.jar
Normal file
BIN
src/site/resources/modules-0.3.2-javadoc.jar
Normal file
Binary file not shown.
BIN
src/site/resources/modules-0.3.2-sources.jar
Normal file
BIN
src/site/resources/modules-0.3.2-sources.jar
Normal file
Binary file not shown.
BIN
src/site/resources/modules-0.3.2.jar
Normal file
BIN
src/site/resources/modules-0.3.2.jar
Normal file
Binary file not shown.
BIN
src/site/resources/modules-0.3.jar
Normal file
BIN
src/site/resources/modules-0.3.jar
Normal file
Binary file not shown.
BIN
src/site/resources/rome-modules-1.0.jar
Normal file
BIN
src/site/resources/rome-modules-1.0.jar
Normal file
Binary file not shown.
31
src/site/site.xml
Normal file
31
src/site/site.xml
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://maven.apache.org/DECORATION/1.3.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.3.0 http://maven.apache.org/xsd/decoration-1.3.0.xsd"
|
||||||
|
name="ROME-Modules">
|
||||||
|
<bannerLeft>
|
||||||
|
<name>ROME</name>
|
||||||
|
<src>images/romelogo.png</src>
|
||||||
|
<href>http://github.com/rometools/</href>
|
||||||
|
</bannerLeft>
|
||||||
|
<publishDate position="right"/>
|
||||||
|
<version position="right"/>
|
||||||
|
<body>
|
||||||
|
<menu name="ROME-Modules">
|
||||||
|
<item name="Overview" href="index.html"/>
|
||||||
|
<item name="iTunes Podcasting" href="ITunesPodcasting.html" />
|
||||||
|
<item name="GeoRSS.html" href="GeoRSS.html" />
|
||||||
|
<item name="Slash" href="Slash.html" />
|
||||||
|
<item name="Google Base" href="GoogleBase.html" />
|
||||||
|
<item name="Content" href="Content.html" />
|
||||||
|
<item name="Creative Commons" href="CreativeCommons.html" />
|
||||||
|
<item name="Yahoo! MediaRSS" href="MediaRSS.html" />
|
||||||
|
<item name="iPhoto Photocasting" href="IPhotoPhotocasting.html" />
|
||||||
|
<item name="A9 OpenSearch" href="A9OpenSearch.html" />
|
||||||
|
<item name="Microsoft Simple List Extensions" href="MicrosoftSimpleListExtensions.html" />
|
||||||
|
<item name="Microsoft Simple Sharing Extensions" href="MicrosoftSimpleSharingExtensions.html" />
|
||||||
|
<item name="Yahoo! Weather" href="Weather.html" />
|
||||||
|
</menu>
|
||||||
|
<menu ref="reports" />
|
||||||
|
</body>
|
||||||
|
</project>
|
Loading…
Reference in a new issue