diff --git a/Certiorem/CertioremTutorial.html b/Certiorem/CertioremTutorial.html new file mode 100644 index 0000000..fbe9d17 --- /dev/null +++ b/Certiorem/CertioremTutorial.html @@ -0,0 +1,282 @@ + + + + + + + + + + + ROME - Certiorem Tutorial + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +
+

Certiorem Tutorial

+

Certiorem is a PubSubHubub (PSH) implementation for ROME. It isn't an application, but an API for building each of the three components (Publisher, Subscriber and Hub) into your web apps.

+

You can see an example webapp here.

+
+

Creating a Hub

+

Hubs take notifications, or "Pings" that tell it the content of a feed has been updated, fetch the feed, then notify each of the subscribers of the change. As you will begin to see, Certiorem is very much about "Composition" of classes. The Hub class is a prime example of this.

+

Looking at the example webapp we see:

+
+
@Provides
+@Singleton
+public Hub buildHub() {
+    FeedFetcher fetcher = new HttpURLFeedFetcher(new DeltaFeedInfoCache());
+    Hub hub = new Hub(new InMemoryHubDAO(), new UnthreadedVerifier(), new UnthreadedNotifier(), fetcher);
+
+    return hub;
+}
+

First we construct an instance of FeedFetcher, from the Fetcher subproject. This will be used to fetch feeds from remote hosts. There are a number of implementations for FeedFetcher and FeedInfoCache in the Fetcher project. Please look there for info on what is what.

+

Next we need a HubDAO implementation. This is a DAO for managing Subscriber and SubscriptionSummary classes. Here we are using an in-memory DAO, which like the HashMapFeedInfoCache will evaporate if we restart our web application. A JPA implementation for persistence is also available, but incomplete at time of writing.

+

Next we need two implementations of network client interfaces: a Verifier, and a Notifier. The Verifier calls back to the Subscribers and verifies their subscribe/unsubscribe operations. A Notifier is used to send updates to to the clients. There are two basic implementations of these provided: A ThreadPool* and Unthreaded* version of each. The thread pool version uses a ThreadPoolExecutor to run queues of outbound calls. The Unthreaded version of each, makes the network calls in-line with the request to the hub. These are suitable for environments like Google App Engine where spawning threads from servlets is absolutely verboten.

+

There are other constructors that contain lists of restrictions for what the hub will support: acceptable topic feeds, ports, protocols, etc.

+

The hub here is just a business logic class. In order to have a functioning hub, we need a servlet exposing the Hub. In the "web" package, there is an abstract servlet you can use to do just this. In the Guice wired example, we simply create a servlet with an injected Hub implementation.

+
+
@Singleton
+public class HubServlet extends AbstractHubServlet {
+
+    @Inject
+    public HubServlet(final Hub hub){
+        super(hub);
+    }
+}
+//... in the ServerModule...
+
+serve("/hub*").with(HubServlet.class);
+

We can now include a <link rel="hub"> value in our feeds and publish notifications of changes. 

+
+

Publishing Ping Notifications

+

This is perhaps the easiest thing to do. The Publisher class will take various combinations of URLs and SyndFeeds and send the appropriate notification. If your SyndFeed contains a <link rel='sel' /> and <link rel='hub' /> you can just pass the SyndFeed object. Otherwise, you can use the URL strings where appropriate.

+

The example couldn't be simpler:

+
+
Publisher pub = new Publisher();
+try {
+    pub.sendUpdateNotification("http://localhost/webapp/hub", "http://localhost/webapp/research-atom.xml");
+} catch (NotificationException ex) {
+    Logger.getLogger(NotifyTest.class.getName()).log(Level.SEVERE, null, ex);
+    throw new ServletException(ex);
+}
+

Once this notification is sent, the hub will make a request to the feed and notify the clients of new entries.

+
+

Subscribing to Feeds

+

To set up a feed subscriber, you need to go through a process very much like setting up a Hub. First, create the Subscriptions class by composition:

+
+
@Provides
+@Singleton
+public Subscriptions buildSubs(){
+    Subscriptions subs = new Subscriptions(new HashMapFeedInfoCache(), new AsyncRequester(),
+            "http://localhost/webapp/subscriptions/", new InMemorySubDAO());
+    return subs;
+}
+

First we need a FeedInfoCache implementation. This will be updated as notifications come in, so in your web app, you want to make sure this is shared with the FeedFetcher implementation you are using to read feeds. Next you need a Requester, this is a network class that makes subscription requests to remote hubs. Next, a URL prefix for where the callbacks will live. This really means the URL to the SubServlet that is resolvable externally. Finally, a DAO for storing and retrieving Subscription objects.

+

As in the Hub, we need a wrapper servlet to call into the Subscriptions class

+
+
@Singleton
+public class SubServlet extends AbstractSubServlet {
+
+    @Inject
+    public SubServlet(final Subscriptions subscriptions){
+        super(subscriptions);
+    }
+}
+
+// In the ServerModule...
+serve("/subscriptions/*").with(SubServlet.class)
+

Now if we want to subscribe to a feed, we get a reference to the Subscriptions object, and pass in either the SyndFeed (with appropriate rel="hub" and rel="self" links) or simply a couple of URLs:

+
+
 subs.subscribe("http://localhost/webapp/hub", "http://localhost/webapp/research-atom.xml", true, -1, null, new SubscriptionCallback(){
+
+            public void onFailure(Exception e) {
+                e.printStackTrace();
+            }
+
+            public void onSubscribe(Subscription subscribed) {
+                System.out.println("Subscribed "+subscribed.getId() +" "+subscribed.getSourceUrl());
+            }
+
+        });
+

Here we pass in the URL of the Hub, the URL of the feed, a boolean indicating we want to make the subscription request synchronously, the lease seconds we want to keep the subscription for, a null cryptographic secret, and a Callback invoked when the subscribe request completes.

+
+
+
+ +
+ + + + diff --git a/Certiorem/index.html b/Certiorem/index.html new file mode 100644 index 0000000..860334d --- /dev/null +++ b/Certiorem/index.html @@ -0,0 +1,221 @@ + + + + + + + + + + + ROME - certiorem + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +
+

Certiorem

+

Certiorem is an implementation of the PubSubHubub protocol for ROME.

+

It is dependent on ROME and ROME-Fetcher for the base implementations, and will provide standard plugins for Propono to allow for publish eventing, where applicable.

+
+

Primary Components

+
+

Hub Implementation and Scaffolding (Done)

+

The first part of Certiorem is a basic set of scaffolding classes that can be used to create a PSH notification hub. Initially, this will include a non-guaranteed delivery hub, with standard implementations suitable for deployment on most JavaEE application servers or Google App Engine. It is intended that there should be at least one simple, drop in WAR file, utilizing JavaEE classes that can work in a default configuration for various standard web containers. Subsequently,  each of the classes in the PSH implementation up through the primary Controller class use constructor-time composition/configuration so that the user/developer can easily construct a custom configuration of the Hub.

+
+

Client Implementation Integrated with ROME-Fetcher (Done)

+

For web-based applications that use ROME-Fetcher, an extended push-notified store wrapper that will update based on callbacks from a Hub of change notifications. This will include a highly configurable callback servlet to write into the Fetcher cache as changes are made. Additionally, the system should support (semi-)real time notifications of changes in the form of a listener that exectutes in a TBD thread state relative to the callback servlet. This should be packaged as a simple JAR with no more deps than fetcher that defines the callback servlet, and automagically does subscribes where link=rel appropriate.

+
+

Notification Implementation for Propono based and JAX-RS based Servers (In Progress)

+

This should be a simple API call to notify a Hub of changes to topics. Again, this should provide real-time notifications either synchronously or asynchronously. Importantly for Asynchronous notifications, they should block subsequent change notifications pending a notification to the Hub.

+

References: 

+

https://github.com/nlothian/RTUpdates/blob/master/src/com/nicklothian/pubsubhub/PubSubHubSubscriptionServlet.java

+

http://grack.com/blog/2009/09/09/parsing-the-pubsubhubbub-notifications/

+
+

Notes on the Code

+

It is still mostly a rough sketch, but the big outlines are there:

+

There are three main packages: pub, sub and hub.

+

The pub package is basically just a single utility class for pushing notifications to a hub.

+

The hub package contains the Hub class. This is a general business controller that is intended to allow you to build a servlet around it with a very, very thin veneer, but you could also use it to drive an XMPP or JMS version too. It is basically built by composition of a number of classes, for which there are some default implementations: A Verifier, which makes the callback to verify new subscriptions, the HubDAO which stores the current subscriptions and subscriber statistics, and a Notifier which actually sends notifications to the subscribers. There are a couple of implementations of each of these (though the JPA HubDAO is still in process). Mostly the implementations for the Verifier and Notifier support threadpooling or no-threads (for App Engine use).

+

I have just started sketching out the sub package, but it basically has a "Subscriptions" class that will take in notifications (using the same "thin veneer" pattern that the Hub class uses). It is also constructed with some impls: A SubscriptionDAO that stores you current subscription information, a FeedFetcherCache that holds the received data, and a Requester that makes the subscription requests to hubs.

+

I am hoping to have a basic end to end example working sometime in the next week or so, but if anyone wants to look over what is there, feel free.

+
+
+
+ +
+ + + + diff --git a/ChangeLog.html b/ChangeLog.html index b0db5a1..85b729b 100644 --- a/ChangeLog.html +++ b/ChangeLog.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Change Log @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
@@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -425,7 +472,7 @@ SyndOutput --> SyndFeedOutputt
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -435,4 +482,4 @@ SyndOutput --> SyndFeedOutputt
    - \ No newline at end of file + diff --git a/Fetcher/BuildingTheRomeFetcher.html b/Fetcher/BuildingTheRomeFetcher.html new file mode 100644 index 0000000..1c33188 --- /dev/null +++ b/Fetcher/BuildingTheRomeFetcher.html @@ -0,0 +1,191 @@ + + + + + + + + + + + ROME - Building the Rome Fetcher + + + + + + + + + + + + + + + + +
    + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Building the Rome Fetcher

    +

    The Rome Fetcher can build using Maven 2.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/ChangeLog.html b/Fetcher/ChangeLog.html new file mode 100644 index 0000000..02c42ae --- /dev/null +++ b/Fetcher/ChangeLog.html @@ -0,0 +1,237 @@ + + + + + + + + + + + ROME - Change Log + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Change Log

    +
    +

    Prior to first release (on the way to v0.3)

    +
      +
    1. Updated to handle removal of IO methods using byte streams
      Byte Stream IO was removed from Rome itself. The Rome Fetcher is now updated to support this
    2. +
    3. Add FeedFetcherI interface and FeedFetcherFactory class
      There is now a FeedFetcherI interface, which FeedFetcher implements. Use FeedFetcherFactory to create instances of FeedFetcher (as suggested by Joseph Ottinger) (FeedFetcherFactory was later removed)
    4. +
    5. Event Support Added to FeedFetcherI
      The FeedFetcherI interface now supports feed polled, feed retrieved and feed unchanged events
    6. +
    7. Samples added
      Samples are now included with the Rome Fetcher
    8. +
    9. Unit Tests Added
      JUnit based tests which invoke the Rome Fetcher against an embedded Jetty webserver are now included
    10. +
    11. Bug fixes in the FeedFetcher event model
      The JUnit test suite uncovered some bugs in the event model used by the FeedFetcher. These bugs are now fixed.
    12. +
    13. Refactored the SyndFeedInfo class
      SyndFeedInfo now extends ObjectBean
    14. +
    15. Removed FeedFetcherFactory
      The benefit of the FeedFetcherFactory was arguable. Now the client code will need to manage the creation of specific implementations of the FeedFetcher
    +
    +

    Prior to second release (on the way to v0.4)

    +
      +
    1. Refectored to match Rome naming standards
      FeedFetcherI renamed to FeedFetcher
      #. New FeedFetcher Implementation
      HttpClientFeedFetcher uses the Apache Commons HTTP Client
    2. +
    3. Abstract test classes excluded in project.xml
      Tests now run correctly under Maven
    4. +
    5. Added GZip support to HttpClientFeedFetcher
      HttpClientFeedFetcher now supports GZip compression. Tests have been added.
    +
    +

    Prior to third release (on the way to v0.5)

    +
      +
    1. SyndFeedInfo implements Serializable
      SyndFeedInfo implements Serializable to make it easier to store
    2. +
    3. Support for rfc3229 delta encoding
      The Fetcher now supports rfc3229 delta encoding. See http://www.ietf.org/rfc/rfc3229.txt and http://bobwyman.pubsub.com/main/2004/09/using_rfc3229_w.html. Note that this is support is experimental and disabled by default
    +
    +

    Prior to 0.6

    +
      +
    1. Feed passed to FetcherEvents
      When a feed is retrieved it is now passed to the Fetcher Event. This makes it easier to code applications using an event oriented style.
    +
    +

    Prior to 0.7

    +
      +
    1. Fix for URL Connection leak
      In some circumstances URLConnection objects were not closed. This could cause problems in long-running application.
    +
    +

    0.8 was never released

    +
    +

    Prior to 0.9

    +
      +
    1. Fix for potential synchronization issue
      There was the possibility of synchronization issues in the FeedFetcher. Fixed, thanks to suggestions from Javier Kohen.
    2. +
    3. New LinkedHashMapFeedInfoCache FeedFetcherCache implementation
      The new LinkedHashMapFeedInfoCache has the advantage that it will not grow unbound
    +
    +

    Prior to 1.0RC2

    +
      +
    1. BeanInfo class added for AbstractFeedFetcher
      com.rometools.rome.fetcher.impl.AbstractFeedFetcherBeanInfo was created to allow introspection to correctly find the events
    2. +
    3. Callback to allow access to HttpClient HttpMethod object
      Add a HttpClientMethodCallbackIntf to allow the calling code to modify the HttpClient HttpMethod used to make the request (eg, add additinal headers, etc.) Also fixes a reported bug where the user agent wasn't being set properly
    4. +
    5. Support for clearing cache
      See http://java.net/jira/browse/ROME-119 for details
    +
    +

    Prior to 1.0

    +
      +
    1. Support for preserving wire feed data.
      The fetcher now has a setPreserveWireFeed() method which will setup ROME to preserve WireFeed data. See PreservingWireFeeds for further information.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Dependencies/HttpClientFeedFetcher.html b/Fetcher/Dependencies/HttpClientFeedFetcher.html new file mode 100644 index 0000000..f7b88ae --- /dev/null +++ b/Fetcher/Dependencies/HttpClientFeedFetcher.html @@ -0,0 +1,191 @@ + + + + + + + + + + + ROME - HttpClientFeedFetcher + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    HttpClientFeedFetcher

    +

    An implementation of the FeedFetcher which uses the Jakarta HTTP Client. This HTTP client has many benefits over the standard Java implementation.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Dependencies/index.html b/Fetcher/Dependencies/index.html new file mode 100644 index 0000000..fce2ba7 --- /dev/null +++ b/Fetcher/Dependencies/index.html @@ -0,0 +1,217 @@ + + + + + + + + + + + ROME - Dependencies + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Dependencies

    +

    The Rome Fetcher aims to introduce the absolute minimum number of extra dependencies. Currently (30-June-2004) no extra dependencies over those required by Rome are required to use the fetcher.

    +

    The current dependencies required to use the Rome Fetcher are:

    +
      +
    • JDK 1.4+
    • +
    • Current version of Rome
    • +
    • JDom v 1.0
    +

    To build the Rome Fetcher the Jakarta HTTP Client is required.

    +

    If the HttpClientFeedFetcher (fetcher) fetcher implementation is used then the Jakarta HTTP Client and Jakarta Commons Logging is required.

    +

    To build and run the unit tests for the Rome Fetcher the following additional dependencies are required:

    +
      +
    • servletapi version 2.3
    • +
    • jetty 4.2.12
    +

    Note that Maven will automatically download the correct versions of all dependancies.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/KnownIssues.html b/Fetcher/KnownIssues.html new file mode 100644 index 0000000..e63c63a --- /dev/null +++ b/Fetcher/KnownIssues.html @@ -0,0 +1,209 @@ + + + + + + + + + + + ROME - Known Issues + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Known Issues

    +
    +

    Version 0.3

    +
      +
    • The Maven build does not run the jetty tests because of a bug in Maven
    • +
    • Version 0.3 does not have Xerces included in the project.xml (it is required to run the samples). Either get the latest project.xml from CVS, or patch it yourself
    • +
    • 0.3 had a bug that caused it to overwite system properties.
    +
    +

    Version 0.4

    +
      +
    • No known issues (yet!)
    +
    +

    Version 0.5

    +
      +
    • When listening to feed events using FetcherListener, there is no way to get to the retrieved content, because it is set after firing the event. -- jawe
    • +
    • When listening to feed events using FetcherListener, the feed URLs returned by the FetcherEvent are prepended with "sun.net.www.protocol.http.HttpURLConnection:" -- jawe
    +
    +

    Version 0.7

    +
      +
    • HashMapFeedInfoCache doesn't work quite right because URL.hashCode() does hostname resolution and treats virtual hosts with the same IP as equal, so e.g. all RSS feeds from blogspot.com collide in the cache. Also, it's really slow. Fix is to use URL.toExternalForm() as the hash key instead of the URL itself.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Releases/ROMEFetcher0.6.html b/Fetcher/Releases/ROMEFetcher0.6.html new file mode 100644 index 0000000..6fb2dcf --- /dev/null +++ b/Fetcher/Releases/ROMEFetcher0.6.html @@ -0,0 +1,287 @@ + + + + + + + + + + + ROME - ROME Fetcher 0.6 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + + +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Releases/ROMEFetcher0.7.html b/Fetcher/Releases/ROMEFetcher0.7.html new file mode 100644 index 0000000..b05a433 --- /dev/null +++ b/Fetcher/Releases/ROMEFetcher0.7.html @@ -0,0 +1,287 @@ + + + + + + + + + + + ROME - ROME Fetcher 0.7 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + + +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Releases/ROMEFetcher0.9.html b/Fetcher/Releases/ROMEFetcher0.9.html new file mode 100644 index 0000000..0a7db32 --- /dev/null +++ b/Fetcher/Releases/ROMEFetcher0.9.html @@ -0,0 +1,288 @@ + + + + + + + + + + + ROME - ROME Fetcher 0.9 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + + +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Releases/ROMEFetcher1.0.html b/Fetcher/Releases/ROMEFetcher1.0.html new file mode 100644 index 0000000..7f7bf2c --- /dev/null +++ b/Fetcher/Releases/ROMEFetcher1.0.html @@ -0,0 +1,290 @@ + + + + + + + + + + + ROME - ROME Fetcher 1.0 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + + +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Releases/ROMEFetcher1.0RC2.html b/Fetcher/Releases/ROMEFetcher1.0RC2.html new file mode 100644 index 0000000..fcc4b30 --- /dev/null +++ b/Fetcher/Releases/ROMEFetcher1.0RC2.html @@ -0,0 +1,292 @@ + + + + + + + + + + + ROME - ROME Fetcher 1.0 RC2 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + + +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Releases/RomeFetcher0.3.html b/Fetcher/Releases/RomeFetcher0.3.html new file mode 100644 index 0000000..230c36e --- /dev/null +++ b/Fetcher/Releases/RomeFetcher0.3.html @@ -0,0 +1,288 @@ + + + + + + + + + + + ROME - Rome Fetcher 0.3 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Rome Fetcher 0.3

    +

    Rome Fetcher version 0.3 is inital release of the Rome Fetcher. It is released as version 0.3 to synchronize with the version number of the core Rome project release.

    + + +
    +

    Todo list

    +
    + +
    +

    Change Log

    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Releases/RomeFetcher0.4.html b/Fetcher/Releases/RomeFetcher0.4.html new file mode 100644 index 0000000..c60c22d --- /dev/null +++ b/Fetcher/Releases/RomeFetcher0.4.html @@ -0,0 +1,287 @@ + + + + + + + + + + + ROME - Rome Fetcher 0.4 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + + +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Fetcher/Releases/RomeFetcher0.5.html b/Fetcher/Releases/RomeFetcher0.5.html new file mode 100644 index 0000000..2074ba1 --- /dev/null +++ b/Fetcher/Releases/RomeFetcher0.5.html @@ -0,0 +1,288 @@ + + + + + + + + + + + ROME - Rome Fetcher 0.5 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Rome Fetcher 0.5

    +

    The ROME Fetcher v 0.6 is now released. This page exists for historical purposes only.

    + + +
    +

    Todo list

    +
    + +
    +

    Change Log

    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/integration.html b/Fetcher/Releases/index.html similarity index 51% rename from integration.html rename to Fetcher/Releases/index.html index 1105cb6..b5afc7e 100644 --- a/integration.html +++ b/Fetcher/Releases/index.html @@ -1,33 +1,47 @@ - + + + - ROME - Continuous Integration - - - + ROME - Releases + + + - + + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -58,144 +72,153 @@
  • - + Overview
  • - + How Rome Works
  • - + Tutorials And Articles
  • - + Releases
  • - + ROME Development Proposals
  • - - +
  • - + + + Modules +
  • + +
  • + + - Project Information + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • + + +
  • + + + + Project Information +
  • @@ -207,7 +230,7 @@
    - Built by Maven + Built by Maven @@ -217,8 +240,7 @@
    -

    Continuous Integration

    -

    No continuous integration management system is defined. Please check back at a later date.

    +

    Releases

    @@ -227,7 +249,7 @@ - \ No newline at end of file + diff --git a/Fetcher/Releases/rome-fetcher-0.3-src.tar.gz b/Fetcher/Releases/rome-fetcher-0.3-src.tar.gz new file mode 100644 index 0000000..0043cc9 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.3-src.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.3-src.zip b/Fetcher/Releases/rome-fetcher-0.3-src.zip new file mode 100644 index 0000000..b806b31 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.3-src.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.3.tar.gz b/Fetcher/Releases/rome-fetcher-0.3.tar.gz new file mode 100644 index 0000000..958b25e Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.3.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.3.zip b/Fetcher/Releases/rome-fetcher-0.3.zip new file mode 100644 index 0000000..ba85cd1 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.3.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.4-src.tar.gz b/Fetcher/Releases/rome-fetcher-0.4-src.tar.gz new file mode 100644 index 0000000..0af41b0 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.4-src.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.4-src.zip b/Fetcher/Releases/rome-fetcher-0.4-src.zip new file mode 100644 index 0000000..697c2a6 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.4-src.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.4.tar.gz b/Fetcher/Releases/rome-fetcher-0.4.tar.gz new file mode 100644 index 0000000..93adbc0 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.4.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.4.zip b/Fetcher/Releases/rome-fetcher-0.4.zip new file mode 100644 index 0000000..44f1d64 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.4.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.5-src.tar.gz b/Fetcher/Releases/rome-fetcher-0.5-src.tar.gz new file mode 100644 index 0000000..ee71caa Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.5-src.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.5-src.zip b/Fetcher/Releases/rome-fetcher-0.5-src.zip new file mode 100644 index 0000000..eb6ce42 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.5-src.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.5.tar.gz b/Fetcher/Releases/rome-fetcher-0.5.tar.gz new file mode 100644 index 0000000..cc58dd8 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.5.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.5.zip b/Fetcher/Releases/rome-fetcher-0.5.zip new file mode 100644 index 0000000..27c9b55 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.5.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.6-src.tar.gz b/Fetcher/Releases/rome-fetcher-0.6-src.tar.gz new file mode 100644 index 0000000..0d69b1b Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.6-src.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.6-src.zip b/Fetcher/Releases/rome-fetcher-0.6-src.zip new file mode 100644 index 0000000..67ab51a Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.6-src.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.6.tar.gz b/Fetcher/Releases/rome-fetcher-0.6.tar.gz new file mode 100644 index 0000000..c5a996a Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.6.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.6.zip b/Fetcher/Releases/rome-fetcher-0.6.zip new file mode 100644 index 0000000..8890994 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.6.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.7-src.tar.gz b/Fetcher/Releases/rome-fetcher-0.7-src.tar.gz new file mode 100644 index 0000000..30bc5a8 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.7-src.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.7-src.zip b/Fetcher/Releases/rome-fetcher-0.7-src.zip new file mode 100644 index 0000000..ee788d4 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.7-src.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.7.tar.gz b/Fetcher/Releases/rome-fetcher-0.7.tar.gz new file mode 100644 index 0000000..804aa97 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.7.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.7.zip b/Fetcher/Releases/rome-fetcher-0.7.zip new file mode 100644 index 0000000..45934eb Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.7.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.9-src.tar.gz b/Fetcher/Releases/rome-fetcher-0.9-src.tar.gz new file mode 100644 index 0000000..2b1bdf9 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.9-src.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.9-src.zip b/Fetcher/Releases/rome-fetcher-0.9-src.zip new file mode 100644 index 0000000..1899ac7 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.9-src.zip differ diff --git a/Fetcher/Releases/rome-fetcher-0.9.tar.gz b/Fetcher/Releases/rome-fetcher-0.9.tar.gz new file mode 100644 index 0000000..1560db9 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.9.tar.gz differ diff --git a/Fetcher/Releases/rome-fetcher-0.9.zip b/Fetcher/Releases/rome-fetcher-0.9.zip new file mode 100644 index 0000000..43c48a9 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-0.9.zip differ diff --git a/Fetcher/Releases/rome-fetcher-1.0-javadoc.jar b/Fetcher/Releases/rome-fetcher-1.0-javadoc.jar new file mode 100644 index 0000000..7ea9678 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-1.0-javadoc.jar differ diff --git a/Fetcher/Releases/rome-fetcher-1.0-sources.jar b/Fetcher/Releases/rome-fetcher-1.0-sources.jar new file mode 100644 index 0000000..bf1be0f Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-1.0-sources.jar differ diff --git a/Fetcher/Releases/rome-fetcher-1.0.jar b/Fetcher/Releases/rome-fetcher-1.0.jar new file mode 100644 index 0000000..b889d47 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-1.0.jar differ diff --git a/Fetcher/Releases/rome-fetcher-1.0RC2-javadoc.jar b/Fetcher/Releases/rome-fetcher-1.0RC2-javadoc.jar new file mode 100644 index 0000000..4b08a4a Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-1.0RC2-javadoc.jar differ diff --git a/Fetcher/Releases/rome-fetcher-1.0RC2-sources.jar b/Fetcher/Releases/rome-fetcher-1.0RC2-sources.jar new file mode 100644 index 0000000..a471611 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-1.0RC2-sources.jar differ diff --git a/Fetcher/Releases/rome-fetcher-1.0RC2-src.zip b/Fetcher/Releases/rome-fetcher-1.0RC2-src.zip new file mode 100644 index 0000000..d2ac106 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-1.0RC2-src.zip differ diff --git a/Fetcher/Releases/rome-fetcher-1.0RC2.jar b/Fetcher/Releases/rome-fetcher-1.0RC2.jar new file mode 100644 index 0000000..c8a3f85 Binary files /dev/null and b/Fetcher/Releases/rome-fetcher-1.0RC2.jar differ diff --git a/Fetcher/SampleProgramsIncluded.html b/Fetcher/SampleProgramsIncluded.html new file mode 100644 index 0000000..317b4db --- /dev/null +++ b/Fetcher/SampleProgramsIncluded.html @@ -0,0 +1,193 @@ + + + + + + + + + + + ROME - Sample programs included + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Sample programs included

    +

    There are two sample programs included with Rome Fetcher.

    +

    FeedReader is a program which demonstrates the use of the Fetcher to retrieve a feed and then to use the conditional get support to retrieve it again only if it has changed. It also shows how to use the event API in the Fetcher. It can be run using the maven run-read target.

    +

    FeedAggregator is a program which aggregates a number of feeds together into a single feed. It can be run using the maven run-aggr target.

    +
    +
    +
    + +
    + + + + diff --git a/Fetcher/TodoList.html b/Fetcher/TodoList.html new file mode 100644 index 0000000..c89e2ba --- /dev/null +++ b/Fetcher/TodoList.html @@ -0,0 +1,198 @@ + + + + + + + + + + + ROME - Todo list + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Todo list

    +

    Please discuss items here on the rome dev mailing list

    +
    +
    +
    +
    + +
    + + + + diff --git a/Fetcher/UsingTheRomeFetcherModuleToRetrieveFeeds.html b/Fetcher/UsingTheRomeFetcherModuleToRetrieveFeeds.html new file mode 100644 index 0000000..0eb3287 --- /dev/null +++ b/Fetcher/UsingTheRomeFetcherModuleToRetrieveFeeds.html @@ -0,0 +1,203 @@ + + + + + + + + + + + ROME - Using the Rome Fetcher module to retrieve feeds + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Using the Rome Fetcher module to retrieve feeds

    +

    The HttpURLFeedFetcher class does the actual HTTP request. It relies on the FeedInfoCacheI interface which stores information about each feed required for conditional gets. Currently there is a single implementation of FeedInfoCacheI supplied: HashMapFeedInfoCache.

    +

    The basic usage of FeedFetcher is as follows:

    +
    +
    FeedFetcherCache feedInfoCache = HashMapFeedInfoCache.getInstance();
    +FeedFetcher feedFetcher = new HttpURLFeedFetcher(feedInfoCache);
    +SyndFeed feed = feedFetcher.retrieveFeed(new URL("http://blogs.sun.com/roller/rss/pat"));
    +System.out.println(feed);
    +

    Any subsequent fetches of http://blogs.sun.com/roller/rss/pat by any FeedFetcher using feedInfoCache will now only retrieve the feed if it has changed.

    +

    FeedFetcher can be used without a cache if required. Simply create it using the zero-parameter constructor:

    +
    +
    FeedFetcher feedFetcher = new HttpURLFeedFetcher();
    +

    A more complete sample (including the use of listener on Fetcher events) is included in the Rome Fetcher project

    +

    Note that there has been considerable discussion on the rome-dev list about the best way to manage the creation of the feed fetcher. Currently the client code needs to be responsible for creating specific implementations of the FeedFetcherI interface.

    +
    +
    +
    + +
    + + + + diff --git a/Fetcher/WishList.html b/Fetcher/WishList.html new file mode 100644 index 0000000..506ca72 --- /dev/null +++ b/Fetcher/WishList.html @@ -0,0 +1,194 @@ + + + + + + + + + + + ROME - Wish list + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Wish list

    +
    +
    +
    +
    + +
    + + + + diff --git a/Fetcher/index.html b/Fetcher/index.html new file mode 100644 index 0000000..bebca7d --- /dev/null +++ b/Fetcher/index.html @@ -0,0 +1,239 @@ + + + + + + + + + + + ROME - Home + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Rome Fetcher

    +

    The Rome Fetcher (see modules/fetcher) allows the retrieval of feeds via HTTP. It supports HTTP conditional gets (ie: last modified and ETag handling) and GZip encoded feeds. It should enable user to write aggregators that follow the Atom aggregator behaviour recommendations

    +

    As with the rest of Rome, the Fetcher subproject is ultra-lean - it requires no new dependencies over the requirements for Rome.

    + +
    +

    Todo list

    +
    +
    +

    Wish list

    +
    + + +
    +

    Change Log

    +
    +
    +
    +
    + +
    + + + + diff --git a/HowRomeWorks/RomeV0.4TutorialDefiningACustomModuleBeanParserAndGenerator.html b/HowRomeWorks/RomeV0.4TutorialDefiningACustomModuleBeanParserAndGenerator.html index 7892eba..04041d5 100644 --- a/HowRomeWorks/RomeV0.4TutorialDefiningACustomModuleBeanParserAndGenerator.html +++ b/HowRomeWorks/RomeV0.4TutorialDefiningACustomModuleBeanParserAndGenerator.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.4 Tutorial, Defining a Custom Module (bean, parser and generator) @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -134,8 +146,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -163,8 +210,7 @@
    -

    Rome v0.4 Tutorial, Defining a Custom Module (bean, parser and generator)

    -

    Software requirements: Synd J2SE 1.4+, JDOM 1.0 and Rome 0.4.

    +

    Defining a Custom Module (bean, parser and generator)

    This tutorial walks through the steps of creating a custom module for syndication feeds that support additional namespaces (such as RSS 1.0, RSS 2.0 and Atom 0.3).

    To understand this tutorial you should be familiar the with Rome API and with the use of modules in syndication feeds.

    Out of the box Rome parsers and generators support plug-ability of modules for RSS 1.0, RSS 2.0 and Atom 0.3 at both feed and item/entry levels. Also support for the Dublin Core and Syndication modules is provided.

    @@ -408,19 +454,19 @@ public class SampleModuleGenerator implements ModuleGenerator {
     # Parsers for RSS 1.0 feed modules
     #
    -rss_1.0.feed.ModuleParser.classes=com.sun.syndication.samples.module.SampleModuleParser
    +rss_1.0.feed.ModuleParser.classes=com.rometools.rome.samples.module.SampleModuleParser
     
     # Parsers for RSS 1.0 item modules
     #
    -rss_1.0.item.ModuleParser.classes=com.sun.syndication.samples.module.SampleModuleParser
    +rss_1.0.item.ModuleParser.classes=com.rometools.rome.samples.module.SampleModuleParser
     
     # Generators for RSS 1.0 feed modules
     #
    -rss_1.0.feed.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleModuleGenerator
    +rss_1.0.feed.ModuleGenerator.classes=com.rometools.rome.samples.module.SampleModuleGenerator
     
     # Generators for RSS_1.0 entry modules
     #
    -rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleModuleGenerator
    +rss_1.0.item.ModuleGenerator.classes=com.rometools.rome.samples.module.SampleModuleGenerator
     

    If you are defining more than one module, indicate the parser and generator implementation classes separated by commas or spaces.

    @@ -435,7 +481,7 @@ rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleMo
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -445,4 +491,4 @@ rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleMo
    - \ No newline at end of file + diff --git a/HowRomeWorks/RomeV0.4TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html b/HowRomeWorks/RomeV0.4TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html index ac95931..b1ac20a 100644 --- a/HowRomeWorks/RomeV0.4TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html +++ b/HowRomeWorks/RomeV0.4TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.4 Tutorial, Using Rome to aggregate many syndication feeds into a single one @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -134,8 +146,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -163,9 +210,8 @@
    -

    Rome v0.4 Tutorial, Using Rome to aggregate many syndication feeds into a single one

    -

    Software requirements: J2SE 1.4+, JDOM 1.0 and Rome 0.4.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Using Rome to aggregate many syndication feeds into a single one

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeed instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -195,7 +241,7 @@ aggrFeed.setLink("http://www.anonymous.com");
     

    The following lines of code show how to copy the entries of a SyndFeed instance being read (inFeed) into a SyndFeed instance being created within the application (feed):

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.io.InputStreamReader;
    @@ -203,11 +249,11 @@ import java.io.PrintWriter;
     import java.util.List;
     import java.util.ArrayList;
     
    -import com.sun.syndication.feed.synd.SyndFeed;
    -import com.sun.syndication.feed.synd.SyndFeedImpl;
    -import com.sun.syndication.io.SyndFeedOutput;
    -import com.sun.syndication.io.SyndFeedInput;
    -import com.sun.syndication.io.XmlReader;
    +import com.rometools.rome.feed.synd.SyndFeed;
    +import com.rometools.rome.feed.synd.SyndFeedImpl;
    +import com.rometools.rome.io.SyndFeedOutput;
    +import com.rometools.rome.io.SyndFeedInput;
    +import com.rometools.rome.io.XmlReader;
     
     /**
      * It aggregates a list of RSS/Atom feeds (they can be of different types)
    @@ -276,7 +322,7 @@ public class FeedAggregator {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -286,4 +332,4 @@ public class FeedAggregator {
    - \ No newline at end of file + diff --git a/HowRomeWorks/RomeV0.4TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html b/HowRomeWorks/RomeV0.4TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html index 768eca9..58483ba 100644 --- a/HowRomeWorks/RomeV0.4TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html +++ b/HowRomeWorks/RomeV0.4TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.4 Tutorial, Using Rome to convert a syndication feed from one type to another @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -134,8 +146,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -163,9 +210,8 @@
    -

    Rome v0.4 Tutorial, Using Rome to convert a syndication feed from one type to another

    -

    Software requirements: Synd J2SE 1.4+, JDOM 1.0 and Rome 0.4.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Using Rome to convert a syndication feed from one type to another

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeed instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -183,15 +229,15 @@ output.output(feed,new PrintWriter(System.out));
     

    Following is the full code for a Java application that reads a syndication feed and converts it to other syndication feed type, writing the converted feed to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.io.InputStreamReader;
     import java.io.PrintWriter;
    -import com.sun.syndication.feed.synd.SyndFeed;
    -import com.sun.syndication.io.SyndFeedInput;
    -import com.sun.syndication.io.SyndFeedOutput;
    -import com.sun.syndication.io.XmlReader;
    +import com.rometools.rome.feed.synd.SyndFeed;
    +import com.rometools.rome.io.SyndFeedInput;
    +import com.rometools.rome.io.SyndFeedOutput;
    +import com.rometools.rome.io.XmlReader;
     
     /**
      * It Converts any RSS/Atom feed type to a an RSS/Atom feed of the
    @@ -244,7 +290,7 @@ public class FeedConverter {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -254,4 +300,4 @@ public class FeedConverter {
    - \ No newline at end of file + diff --git a/HowRomeWorks/RomeV0.4TutorialUsingRomeToCreateAndWriteASyndicationFeed.html b/HowRomeWorks/RomeV0.4TutorialUsingRomeToCreateAndWriteASyndicationFeed.html index 7e723a9..cae81a5 100644 --- a/HowRomeWorks/RomeV0.4TutorialUsingRomeToCreateAndWriteASyndicationFeed.html +++ b/HowRomeWorks/RomeV0.4TutorialUsingRomeToCreateAndWriteASyndicationFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.4 Tutorial, Using Rome to create and write a syndication feed @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -134,8 +146,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -163,9 +210,8 @@
    -

    Rome v0.4 Tutorial, Using Rome to create and write a syndication feed

    -

    Software requirements: J2SE 1.4+, JDOM 1.0 and Rome 0.4.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.feed.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Using Rome to create and write a syndication feed

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.feed.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Creating a feed with SyndFeed beans consists of creating beans and setting their properties. The following code fragments show how a SyndFeed bean with 3 entries is created.

    First the SyndFeed instance is created, the preferred syndication format is set and the feed header info (title, link, description) is also set.

    @@ -224,10 +270,10 @@

    Following is the full code for a Java application that creates a syndication feed and writes it to a file in the specified syndication format.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
    -import com.sun.syndication.feed.synd.*;
    -import com.sun.syndication.io.SyndFeedOutput;
    +import com.rometools.rome.feed.synd.*;
    +import com.rometools.rome.io.SyndFeedOutput;
     
     import java.io.FileWriter;
     import java.io.Writer;
    @@ -331,7 +377,7 @@ public class FeedWriter {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -341,4 +387,4 @@ public class FeedWriter {
    - \ No newline at end of file + diff --git a/HowRomeWorks/RomeV0.4TutorialUsingRomeToReadASyndicationFeed.html b/HowRomeWorks/RomeV0.4TutorialUsingRomeToReadASyndicationFeed.html index ecbddbb..605b833 100644 --- a/HowRomeWorks/RomeV0.4TutorialUsingRomeToReadASyndicationFeed.html +++ b/HowRomeWorks/RomeV0.4TutorialUsingRomeToReadASyndicationFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.4 Tutorial, Using Rome to read a syndication feed @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -134,8 +146,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -163,9 +210,8 @@
    -

    Rome v0.4 Tutorial, Using Rome to read a syndication feed

    -

    Software requirements: J2SE 1.4+, JDOM 1.0 and Rome 0.4.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Using Rome to read a syndication feed

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeed instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -181,13 +227,13 @@ System.out.println(feed);
     

    Following is the full code for a Java application that reads a syndication feed and prints the SyndFeed bean to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.io.InputStreamReader;
    -import com.sun.syndication.feed.synd.SyndFeed;
    -import com.sun.syndication.io.SyndFeedInput;
    -import com.sun.syndication.io.XmlReader;
    +import com.rometools.rome.feed.synd.SyndFeed;
    +import com.rometools.rome.io.SyndFeedInput;
    +import com.rometools.rome.io.XmlReader;
     
     /**
      * It Reads and prints any RSS/Atom feed type.
    @@ -234,7 +280,7 @@ public class FeedReader {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -244,4 +290,4 @@ public class FeedReader {
    - \ No newline at end of file + diff --git a/HowRomeWorks/UnderstandingTheRomeCommonClassesAndInterfaces.html b/HowRomeWorks/UnderstandingTheRomeCommonClassesAndInterfaces.html index 86b3043..74de12d 100644 --- a/HowRomeWorks/UnderstandingTheRomeCommonClassesAndInterfaces.html +++ b/HowRomeWorks/UnderstandingTheRomeCommonClassesAndInterfaces.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Understanding the Rome common classes and interfaces @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -134,8 +146,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -443,7 +490,7 @@ public interface Foo extends CopyFrom {
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -453,4 +500,4 @@ public interface Foo extends CopyFrom {
    - \ No newline at end of file + diff --git a/HowRomeWorks/index.html b/HowRomeWorks/index.html index 6f13ef9..0506146 100644 --- a/HowRomeWorks/index.html +++ b/HowRomeWorks/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - How Rome works @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -134,8 +146,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -182,7 +229,7 @@ SyndFeed feed = input.build(new InputStreamReader(feedUrl.openStream()));
  • SyndFeedInput delegates to WireFeedInput to do the actual parsing.
  • WireFeedInput uses a PluginManager of class FeedParsers to pick the right parser to use to parse the feed and then calls that parser to parse the Newsfeed.
  • -
  • The appropriate parser parses the Newsfeed parses the feed, using JDom, into a WireFeed. If the Newsfeed is in an RSS format, the the WireFeed is of class Channel and contains Items, Clouds, and other RSS things from the com.sun.syndication.feed.rss package. Or, on the other hand, if the Newsfeed is in Atom format, then the WireFeed is of class Feed from the com.sun.syndication.atom package. In the end, WireFeedInput returns a WireFeed.
  • +
  • The appropriate parser parses the Newsfeed parses the feed, using JDom, into a WireFeed. If the Newsfeed is in an RSS format, the the WireFeed is of class Channel and contains Items, Clouds, and other RSS things from the com.rometools.rome.feed.rss package. Or, on the other hand, if the Newsfeed is in Atom format, then the WireFeed is of class Feed from the com.rometools.rome.atom package. In the end, WireFeedInput returns a WireFeed.
  • SyndFeedInput uses the returned WireFeedInput to create a SyndFeedImpl. Which implements SyndFeed. SyndFeed is an interface, the root of an abstraction that represents a format independent Newsfeed.
  • SyndFeedImpl uses a Converter to convert between the format specific WireFeed representation and a format-independent SyndFeed.
  • SyndFeedInput returns to you a SyndFeed containing the parsed Newsfeed.
  • @@ -210,7 +257,7 @@ SyndFeed feed = input.build(new InputStreamReader(feedUrl.openStream())); - \ No newline at end of file + diff --git a/HowToBuildRome.html b/HowToBuildRome.html index 2354094..dbec989 100644 --- a/HowToBuildRome.html +++ b/HowToBuildRome.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - How to build Rome? @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -173,7 +220,7 @@ rome/target/rome-VERSION.jar
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -183,4 +230,4 @@ rome/target/rome-VERSION.jar
    - \ No newline at end of file + diff --git a/Modules/A9OpenSearch.html b/Modules/A9OpenSearch.html new file mode 100644 index 0000000..a7281d2 --- /dev/null +++ b/Modules/A9OpenSearch.html @@ -0,0 +1,310 @@ + + + + + + + + + + + ROME - A9 OpenSearch + + + + + + + + + + + + + + + + +
    + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    A9 OpenSearch

    +

    This plug in is for use with OpenSearch.org results.

    +
    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/Content.html b/Modules/Content.html new file mode 100644 index 0000000..1a3ae17 --- /dev/null +++ b/Modules/Content.html @@ -0,0 +1,291 @@ + + + + + + + + + + + ROME - Content + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Content

    +

    This plug in is for use content:encoded in feeds.

    +
    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/CreativeCommons.html b/Modules/CreativeCommons.html new file mode 100644 index 0000000..95888fa --- /dev/null +++ b/Modules/CreativeCommons.html @@ -0,0 +1,294 @@ + + + + + + + + + + + ROME - Creative Commons + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    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).

    +
    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/GeoRSS.html b/Modules/GeoRSS.html new file mode 100644 index 0000000..b026f69 --- /dev/null +++ b/Modules/GeoRSS.html @@ -0,0 +1,304 @@ + + + + + + + + + + + ROME - GeoRSS + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    GeoRSS

    +

    This Rome plugin is for adding location information to RSS/Atom.

    +
    +

    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/

    +
    +

    Changes

    +
    +

    0.1

    +

    Initial Releas from ROME

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/GoogleBase.html b/Modules/GoogleBase.html new file mode 100644 index 0000000..e8dc658 --- /dev/null +++ b/Modules/GoogleBase.html @@ -0,0 +1,296 @@ + + + + + + + + + + + ROME - Google Base + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Google Base

    +

    This plug in is for use with Google Base RSS/Atom Extensions

    +
    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/IPhotoPhotocasting.html b/Modules/IPhotoPhotocasting.html new file mode 100644 index 0000000..d1394c5 --- /dev/null +++ b/Modules/IPhotoPhotocasting.html @@ -0,0 +1,304 @@ + + + + + + + + + + + ROME - iPhoto Photocasting + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    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 (modules) plug in instead. iPhoto will also read MediaRSS (modules) (Flickr Photostream) feeds as well.

    +
    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/ITunesPodcasting.html b/Modules/ITunesPodcasting.html new file mode 100644 index 0000000..c7e33c2 --- /dev/null +++ b/Modules/ITunesPodcasting.html @@ -0,0 +1,305 @@ + + + + + + + + + + + ROME - iTunes Podcasting + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    iTunes Podcasting

    +

    This plug in is for use with iTunes Music Service podcast listings.

    +
    +

    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.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/MediaRSS.html b/Modules/MediaRSS.html new file mode 100644 index 0000000..e68cb62 --- /dev/null +++ b/Modules/MediaRSS.html @@ -0,0 +1,306 @@ + + + + + + + + + + + ROME - MediaRSS + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    MediaRSS

    +

    This plugin is for use with Yahoo! MediaRSS/Flickr Photostreams

    +
    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/MicrosoftSimpleListExtensions.html b/Modules/MicrosoftSimpleListExtensions.html new file mode 100644 index 0000000..e06408d --- /dev/null +++ b/Modules/MicrosoftSimpleListExtensions.html @@ -0,0 +1,304 @@ + + + + + + + + + + + ROME - Microsoft Simple List Extensions + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    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.

    +
    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/MicrosoftSimpleSharingExtensions.html b/Modules/MicrosoftSimpleSharingExtensions.html new file mode 100644 index 0000000..709d29b --- /dev/null +++ b/Modules/MicrosoftSimpleSharingExtensions.html @@ -0,0 +1,297 @@ + + + + + + + + + + + ROME - Microsoft Simple Sharing Extensions + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Microsoft Simple Sharing Extensions

    +

    This ROME module supports Microsoft Simple Sharing Extensions, an RSS and OPML extension designed to support data synchronization between bi-directional feeds.

    +
    +

    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);
    +}
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/Slash.html b/Modules/Slash.html new file mode 100644 index 0000000..34a9e7b --- /dev/null +++ b/Modules/Slash.html @@ -0,0 +1,297 @@ + + + + + + + + + + + ROME - Slash + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Slash

    +

    This plug in is for use with feeds from Slash-based weblogs.

    +
    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/Weather.html b/Modules/Weather.html new file mode 100644 index 0000000..d7bd186 --- /dev/null +++ b/Modules/Weather.html @@ -0,0 +1,295 @@ + + + + + + + + + + + ROME - Weather + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Weather

    +

    This plug in is for use the Yahoo! Weather service.

    +
    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/index.html b/Modules/index.html new file mode 100644 index 0000000..46fbfff --- /dev/null +++ b/Modules/index.html @@ -0,0 +1,326 @@ + + + + + + + + + + + ROME - Home + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    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:

    +
    +
    +

    Get it.

    +

    The 0.3.2 release of modules.jar (which contains all the above modules) is available.

    +
    +

    Downloads

    + +

    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

    +
    +
    +

    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.rometools.rome.feed.module.[Module Name].
    • +
    • Modules contain a com.rometools.rome.feed.module.[Module Name].Module.URI reference for retrieval from ROME Synd* classes.
    • +
    • Modules contain a com.rometools.rome.feed.module.[Module Name].ModuleImpl that is a concrete implementation.
    • +
    • Modules contain a com.rometools.rome.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.rometools.rome.feed.module.[Module Name].io package with parsers and generators.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/Modules/modules-0.3-javadoc.jar b/Modules/modules-0.3-javadoc.jar new file mode 100644 index 0000000..4ee214f Binary files /dev/null and b/Modules/modules-0.3-javadoc.jar differ diff --git a/Modules/modules-0.3-sources.jar b/Modules/modules-0.3-sources.jar new file mode 100644 index 0000000..76a6925 Binary files /dev/null and b/Modules/modules-0.3-sources.jar differ diff --git a/Modules/modules-0.3.1-javadoc.jar b/Modules/modules-0.3.1-javadoc.jar new file mode 100644 index 0000000..8be8227 Binary files /dev/null and b/Modules/modules-0.3.1-javadoc.jar differ diff --git a/Modules/modules-0.3.1-sources.jar b/Modules/modules-0.3.1-sources.jar new file mode 100644 index 0000000..6296f00 Binary files /dev/null and b/Modules/modules-0.3.1-sources.jar differ diff --git a/Modules/modules-0.3.1.jar b/Modules/modules-0.3.1.jar new file mode 100644 index 0000000..4ae93dc Binary files /dev/null and b/Modules/modules-0.3.1.jar differ diff --git a/Modules/modules-0.3.2-javadoc.jar b/Modules/modules-0.3.2-javadoc.jar new file mode 100644 index 0000000..6e16bcd Binary files /dev/null and b/Modules/modules-0.3.2-javadoc.jar differ diff --git a/Modules/modules-0.3.2-sources.jar b/Modules/modules-0.3.2-sources.jar new file mode 100644 index 0000000..b54a9ce Binary files /dev/null and b/Modules/modules-0.3.2-sources.jar differ diff --git a/Modules/modules-0.3.2.jar b/Modules/modules-0.3.2.jar new file mode 100644 index 0000000..abfaad4 Binary files /dev/null and b/Modules/modules-0.3.2.jar differ diff --git a/Modules/modules-0.3.jar b/Modules/modules-0.3.jar new file mode 100644 index 0000000..2f3b07d Binary files /dev/null and b/Modules/modules-0.3.jar differ diff --git a/Modules/rome-modules-1.0.jar b/Modules/rome-modules-1.0.jar new file mode 100644 index 0000000..4839dab Binary files /dev/null and b/Modules/rome-modules-1.0.jar differ diff --git a/Opml/index.html b/Opml/index.html new file mode 100644 index 0000000..ee2a9c2 --- /dev/null +++ b/Opml/index.html @@ -0,0 +1,284 @@ + + + + + + + + + + + ROME - Home + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    ROME OPML

    +

    This project provides support for OPML in ROME.

    +
    +

    Downloads

    +
    +
    +

    Sample Usage

    +

    To use this parser, simply include the jar file in your classpath as you are using ROME. Be sure it exists at the same level as ROME, such that, if ROME is in the common classpath of an application server, don't include this jar in your webapps WEB-INF/lib.

    +
    +
    WireFeedInput input = new WireFeedInput();
    + Opml feed = (Opml) input.build( new File("myOpml.xml") );
    + List<Outline> outlines = (List<Outline>) feed.getOutlines();
    +
    +

    Hierarchy vs Flat

    +

    Since OPML is a hierarchical format, some magic is required to preserve this information when they feed is moved to a Synd* structure. This is accomplished by adding categories indicating the tree structure to the SyndEntries ...

    +

    For example:

    +
    +
    <opml version="1.0">
    + <head>
    +  <title>Top Ten Sources for podcasting</title>
    +  <ownerName>Newsilike Media Group</ownerName>
    +  <ownerEmail>opml@TopTenSources.com</ownerEmail>
    + </head>
    + <body>
    +  <outline type="link" text="TopTenSources: podcasting"
    +        url="http://podcasting.TopTenSources.com/TopTenSources/" />
    +  <outline text="CBS Technology News Podcast - Larry Magid' Tech Report">
    +   <outline type="link" text="Larry Magid's Tech Report" url="http://www.cbsnews.com" />
    +  </outline>
    +  <outline text="Adam Curry: Daily Source Code">
    +   <outline type="link" text="#374 Daily Source Code for Tuesday April 25th 2006"
    +        url="http://radio.weblogs.com/0001014/2006/04/26.html#a7304" />
    +   <outline type="link" text="#373 Daily Source Code for Monday April 24th 2006"
    +        url="http://radio.weblogs.com/0001014/2006/04/24.html#a7303" />
    +   <outline type="link" text="#372 Daily Source Code for Friday April 21st 2006"
    +        url="http://radio.weblogs.com/0001014/2006/04/21.html#a7302" />
    +   <outline type="link" text="#371 Daily Source Code for Thursday April 20th 2006"
    +        url="http://radio.weblogs.com/0001014/2006/04/20.html#a7301" />
    +   <outline type="link" text="#370 Daily Source Code for Wednesday April 19th 2006"
    +        url="http://radio.weblogs.com/0001014/2006/04/19.html#a7300" />
    +  </outline>
    +  <outline text="Gillmor Gang">
    +   <outline type="link" text="Syndicate Gang Part I" url="http://gillmorgang.podshow.com/?p=44" />
    +   <outline type="link" text="HughTrain Gang" url="http://gillmorgang.podshow.com/?p=43" />
    +   <outline type="link" text="Phlegm at 11 Gang" url="http://gillmorgang.podshow.com/?p=42" />
    +   <outline type="link" text="NDA Gang" url="http://gillmorgang.podshow.com/?p=41" />
    +   <outline type="link" text="When the Music?s Over Gang" url="http://gillmorgang.podshow.com/?p=40" />
    +  </outline>
    +

    ...
    When converted to RSS2 becomes:

    +
    +
    <channel>
    +  <title>Top Ten Sources for podcasting</title>
    +  <link>http://foo.com</link>
    +  <description />
    +  <managingEditor>Newsilike Media Group</managingEditor>
    +  <item>
    +   <title>TopTenSources: podcasting</title>
    +   <link>http://podcasting.TopTenSources.com/TopTenSources/</link>
    +   <category domain="urn:rome.tree">node.-1732517202</category>
    +   <category domain="urn:rome.attribute#url">http://podcasting.TopTenSources.com/TopTenSources/</category>
    +   <guid>http://podcasting.TopTenSources.com/TopTenSources/</guid>
    +  </item>
    +  <item>
    +   <title>CBS Technology News Podcast - Larry Magid' Tech Report</title>
    +   <category domain="urn:rome.tree">node.1353657827</category>
    +  </item>
    +  <item>
    +   <title>Larry Magid's Tech Report</title>
    +   <link>http://www.cbsnews.com</link>
    +   <category domain="urn:rome.tree">node.-4085850</category>
    +   <category domain="urn:rome.tree">parent.1353657827</category>
    +   <category domain="urn:rome.attribute#url">http://www.cbsnews.com</category>
    +   <guid>http://www.cbsnews.com</guid>
    +  </item>
    +  <item>
    +   <title>Adam Curry: Daily Source Code</title>
    +   <category domain="urn:rome.tree">node.835791399</category>
    +  </item>
    +  <item>
    +   <title>#374 Daily Source Code for Tuesday April 25th 2006</title>
    +   <link>http://radio.weblogs.com/0001014/2006/04/26.html#a7304</link>
    +   <category domain="urn:rome.tree">node.222050897</category>
    +   <category domain="urn:rome.tree">parent.835791399</category>
    +   <category domain="urn:rome.attribute#url">http://radio.weblogs.com/0001014/2006/04/26.html#a7304</category>
    +   <guid>http://radio.weblogs.com/0001014/2006/04/26.html#a7304</guid>
    +  </item>
    +  <item>
    +   <title>#373 Daily Source Code for Monday April 24th 2006</title>
    +   <link>http://radio.weblogs.com/0001014/2006/04/24.html#a7303</link>
    +   <category domain="urn:rome.tree">node.2088220478</category>
    +   <category domain="urn:rome.tree">parent.835791399</category>
    +   <category domain="urn:rome.attribute#url">http://radio.weblogs.com/0001014/2006/04/24.html#a7303</category>
    +   <guid>http://radio.weblogs.com/0001014/2006/04/24.html#a7303</guid>
    +  </item>
    +

    Nodes get categories with the "urn:rome.tree" URI that is used to maintain the tree structure.

    +

    The other thing you will notice is the "urn:rome.attribute#url". Since OPML allows you to add arbitrary attributes to each outline element, these are used to preserve these values.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2016. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/PreservingWireFeeds.html b/PreservingWireFeeds.html index fc74ca3..45f9526 100644 --- a/PreservingWireFeeds.html +++ b/PreservingWireFeeds.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Preserving WireFeeds @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -160,7 +207,7 @@ feedFetcher.setPreserveWireFeed(true);
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -170,4 +217,4 @@ feedFetcher.setPreserveWireFeed(true);
    - \ No newline at end of file + diff --git a/ProductsOrSitesPoweredByROME.html b/ProductsOrSitesPoweredByROME.html index ef2c506..fb4ffaf 100644 --- a/ProductsOrSitesPoweredByROME.html +++ b/ProductsOrSitesPoweredByROME.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Products or sites powered by ROME @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -206,7 +253,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -216,4 +263,4 @@
    - \ No newline at end of file + diff --git a/Propono/ROMEProponoVersion0.4.html b/Propono/ROMEProponoVersion0.4.html new file mode 100644 index 0000000..e54e6cb --- /dev/null +++ b/Propono/ROMEProponoVersion0.4.html @@ -0,0 +1,202 @@ + + + + + + + + + + + ROME - ROME Propono Version 0.4 + + + + + + + + + + + + + + + + +
    + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    ROME Propono Version 0.4

    +

    This is the first release of the Rome Propono publishing library. It's a beta release and will be followed closely by Propono 0.5.

    + +
    +

    API Docs

    +
    +
    +
    +
    + +
    + + + + diff --git a/Propono/ROMEProponoVersion0.5.html b/Propono/ROMEProponoVersion0.5.html new file mode 100644 index 0000000..21f762b --- /dev/null +++ b/Propono/ROMEProponoVersion0.5.html @@ -0,0 +1,207 @@ + + + + + + + + + + + ROME - ROME Propono Version 0.5 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    ROME Propono Version 0.5

    +

    This is the second release of the Rome Propono publishing library. It's a bug fix release follow-on to 0.4. Here are the changes:

    +
      +
    • Fixes in Blog Client constructors
    • +
    • AtomServlet uses application/atomsvc+xml for the Service Document
    • +
    • Fixed issue #66: don't expect entry to be returned from update
    • +
    • Made example builds more configurable
    + +
    +

    API Docs

    +
    +
    +
    +
    + +
    + + + + diff --git a/Propono/ROMEProponoVersion0.6.html b/Propono/ROMEProponoVersion0.6.html new file mode 100644 index 0000000..3cf3db1 --- /dev/null +++ b/Propono/ROMEProponoVersion0.6.html @@ -0,0 +1,236 @@ + + + + + + + + + + + ROME - ROME Propono Version 0.6 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    ROME Propono Version 0.6

    +

    September 30, 2007

    +

    This is the third release of the Rome Propono publishing library. It includes major changes to add support for the final Atom Publishing Protocol specification relative URIs and out-of-line categories. It's an an interim release it includes a pre-release version of ROME 0.9.1-dev. A new version will follow as soon as ROME 0.9.1 (or 1.0) has been finalized.

    + +
    +

    API Docs

    +
    +
    +

    Changes

    +
      +
    • Updated for APP final (draft #17) w/new APP URI "http://www.w3.org/2007/app"
    • +
    • Tested file-based server against Tim Bray's Ape (from CVS September 30, 2007).
    • +
    • Now includes pre-release of ROME 0.9.1 with key Atom parse fixes.
    • +
    • Changed arguements in Atom server's AtomHandler interface to accept AtomRequest objects instead of String[] pathinfo arrays.
    • +
    • Added support for relative URIs in the Service Document +
    • +
    • Added new options to the file-based server's propono.properties file so you can turn on/off relative URIs and inline categories. +
        +
      • propono.atomserver.filebased.relativeURIs=true
      • +
      • propono.atomserver.filebased.inlineCategories=true
    • +
    • Added support for out-of-line categories in Atom client classes +
    • +
    • Added support for out-of-line categories in Atom server classes +
        +
      • New AtomHandler.getCategoriesDocument(String[] pathInfo) method
      • +
      • New AtomHandler.isCategoriesDocumentURI(String[] pathInfo) method
    • +
    • Renamed Introspection to Service Document +
        +
      • AtomHandler.isIntrospectionURI() -> AtomHandler.isSerivceDocumentURI()
      • +
      • AtomHandler.getIntrospection() -> AtomHandler.getServiceDocument()
      • +
      • Added String[] pathInfo argument to getServiceDocument()
    • +
    • Renamed PubControlModule to AppModule becuase it also supports app:edited +
        +
      • Added rome.properties file to configure AppModule
    +
    +
    +
    + +
    + + + + diff --git a/Propono/ROMEProponoVersion1.0.html b/Propono/ROMEProponoVersion1.0.html new file mode 100644 index 0000000..7f2d76f --- /dev/null +++ b/Propono/ROMEProponoVersion1.0.html @@ -0,0 +1,209 @@ + + + + + + + + + + + ROME - ROME Propono Version 1.0 + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    ROME Propono Version 1.0

    +

    April 2009

    +

    ROME Propono 1.0 is coming soon. If you'd like to help out, you can try 1.0 RC1 and provide feedback to us on the ROME dev mail list.

    + +
    +

    API Docs

    +
    +
    +

    Changes

    +
      +
    • Updated to ROME 1.0
    • +
    • Added support for pluggable authentication in the AtomPub client
    • +
    • Added support for OAuth in the AtomPub client, see Javadocs for details
    +
    +
    +
    + +
    + + + + diff --git a/Propono/index.html b/Propono/index.html new file mode 100644 index 0000000..1871fc7 --- /dev/null +++ b/Propono/index.html @@ -0,0 +1,200 @@ + + + + + + + + + + + ROME - Home + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    ROME Propono

    +

    The ROME Propono subproject is a Java class library that supports publishing protocols, specifically the Atom Publishing Protocol and the legacy MetaWeblog API. Propono includes an Atom client library, an Atom server framework and a Blog client that supports both Atom protocol and the MetaWeblog API.

    +
    +

    Documentation

    +
      +
    • See the Propono API docs for an explanation of Propono usage, diagrams and code examples.
    + +
    +
    +
    + +
    + + + + diff --git a/Propono/rome-propono-0.4-src.tar.gz b/Propono/rome-propono-0.4-src.tar.gz new file mode 100644 index 0000000..39dd993 Binary files /dev/null and b/Propono/rome-propono-0.4-src.tar.gz differ diff --git a/Propono/rome-propono-0.4-src.zip b/Propono/rome-propono-0.4-src.zip new file mode 100644 index 0000000..e65fb8a Binary files /dev/null and b/Propono/rome-propono-0.4-src.zip differ diff --git a/Propono/rome-propono-0.4.tar.gz b/Propono/rome-propono-0.4.tar.gz new file mode 100644 index 0000000..a7f1ddf Binary files /dev/null and b/Propono/rome-propono-0.4.tar.gz differ diff --git a/Propono/rome-propono-0.4.zip b/Propono/rome-propono-0.4.zip new file mode 100644 index 0000000..fedeae3 Binary files /dev/null and b/Propono/rome-propono-0.4.zip differ diff --git a/Propono/rome-propono-0.5-src.tar.gz b/Propono/rome-propono-0.5-src.tar.gz new file mode 100644 index 0000000..03f79b4 Binary files /dev/null and b/Propono/rome-propono-0.5-src.tar.gz differ diff --git a/Propono/rome-propono-0.5-src.zip b/Propono/rome-propono-0.5-src.zip new file mode 100644 index 0000000..421dbac Binary files /dev/null and b/Propono/rome-propono-0.5-src.zip differ diff --git a/Propono/rome-propono-0.5.tar.gz b/Propono/rome-propono-0.5.tar.gz new file mode 100644 index 0000000..013163b Binary files /dev/null and b/Propono/rome-propono-0.5.tar.gz differ diff --git a/Propono/rome-propono-0.5.zip b/Propono/rome-propono-0.5.zip new file mode 100644 index 0000000..5489239 Binary files /dev/null and b/Propono/rome-propono-0.5.zip differ diff --git a/Propono/rome-propono-0.6-src.tar.gz b/Propono/rome-propono-0.6-src.tar.gz new file mode 100644 index 0000000..f98f9f4 Binary files /dev/null and b/Propono/rome-propono-0.6-src.tar.gz differ diff --git a/Propono/rome-propono-0.6-src.zip b/Propono/rome-propono-0.6-src.zip new file mode 100644 index 0000000..641f438 Binary files /dev/null and b/Propono/rome-propono-0.6-src.zip differ diff --git a/Propono/rome-propono-0.6.tar.gz b/Propono/rome-propono-0.6.tar.gz new file mode 100644 index 0000000..e287903 Binary files /dev/null and b/Propono/rome-propono-0.6.tar.gz differ diff --git a/Propono/rome-propono-0.6.zip b/Propono/rome-propono-0.6.zip new file mode 100644 index 0000000..8986f22 Binary files /dev/null and b/Propono/rome-propono-0.6.zip differ diff --git a/Propono/rome-propono-1.0RC1-src.tar.gz b/Propono/rome-propono-1.0RC1-src.tar.gz new file mode 100644 index 0000000..a187e6f Binary files /dev/null and b/Propono/rome-propono-1.0RC1-src.tar.gz differ diff --git a/Propono/rome-propono-1.0RC1-src.zip b/Propono/rome-propono-1.0RC1-src.zip new file mode 100644 index 0000000..b3b9fa9 Binary files /dev/null and b/Propono/rome-propono-1.0RC1-src.zip differ diff --git a/Propono/rome-propono-1.0RC1.tar.gz b/Propono/rome-propono-1.0RC1.tar.gz new file mode 100644 index 0000000..5ef8766 Binary files /dev/null and b/Propono/rome-propono-1.0RC1.tar.gz differ diff --git a/Propono/rome-propono-1.0RC1.zip b/Propono/rome-propono-1.0RC1.zip new file mode 100644 index 0000000..de9ca52 Binary files /dev/null and b/Propono/rome-propono-1.0RC1.zip differ diff --git a/ROMEAndMaven2.html b/ROMEAndMaven2.html index 4a36632..288178a 100644 --- a/ROMEAndMaven2.html +++ b/ROMEAndMaven2.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME and Maven 2 @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -157,7 +204,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -167,4 +214,4 @@
    - \ No newline at end of file + diff --git a/ROMEAndOSGI.html b/ROMEAndOSGI.html index e05c3bd..64f9aad 100644 --- a/ROMEAndOSGI.html +++ b/ROMEAndOSGI.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME and OSGI @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -133,7 +180,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -143,4 +190,4 @@
    - \ No newline at end of file + diff --git a/ROMEDevelopmentProcess.html b/ROMEDevelopmentProcess.html index e7d87e6..eb4cc67 100644 --- a/ROMEDevelopmentProcess.html +++ b/ROMEDevelopmentProcess.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME Development Process @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -138,7 +185,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -148,4 +195,4 @@
    - \ No newline at end of file + diff --git a/ROMEDevelopmentProposals/ROME21stProposalJune10th2006NOTCURRENT.html b/ROMEDevelopmentProposals/ROME21stProposalJune10th2006NOTCURRENT.html index 25cd087..7f285c1 100644 --- a/ROMEDevelopmentProposals/ROME21stProposalJune10th2006NOTCURRENT.html +++ b/ROMEDevelopmentProposals/ROME21stProposalJune10th2006NOTCURRENT.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME2 1st Proposal (June 10th 2006) NOT CURRENT @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -342,7 +389,7 @@ public class FeedConverter {
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -352,4 +399,4 @@ public class FeedConverter {
    - \ No newline at end of file + diff --git a/ROMEDevelopmentProposals/ROME22ndProposalJuly18th2006CURRENT.html b/ROMEDevelopmentProposals/ROME22ndProposalJuly18th2006CURRENT.html index 7594ccf..bb1a3c4 100644 --- a/ROMEDevelopmentProposals/ROME22ndProposalJuly18th2006CURRENT.html +++ b/ROMEDevelopmentProposals/ROME22ndProposalJuly18th2006CURRENT.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME2 2nd Proposal (July 18th 2006) CURRENT @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -362,7 +409,7 @@ public interface FeedConverter {
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -372,4 +419,4 @@ public interface FeedConverter {
    - \ No newline at end of file + diff --git a/ROMEDevelopmentProposals/ROMEFeatureRequests.html b/ROMEDevelopmentProposals/ROMEFeatureRequests.html index 02dab96..2a7eef4 100644 --- a/ROMEDevelopmentProposals/ROMEFeatureRequests.html +++ b/ROMEDevelopmentProposals/ROMEFeatureRequests.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME Feature Requests @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    ROME Feature Requests

    @@ -90,8 +102,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -142,7 +189,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -152,4 +199,4 @@
    - \ No newline at end of file + diff --git a/ROMEROADMAPProposed.html b/ROMEROADMAPProposed.html index e771115..668e80a 100644 --- a/ROMEROADMAPProposed.html +++ b/ROMEROADMAPProposed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME ROADMAP (Proposed) @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -157,7 +204,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -167,4 +214,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1HowToBuildAndRunTheTutorialsSampleCode.html b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1HowToBuildAndRunTheTutorialsSampleCode.html index 5718fd1..279ee05 100644 --- a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1HowToBuildAndRunTheTutorialsSampleCode.html +++ b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1HowToBuildAndRunTheTutorialsSampleCode.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.1, How to build and run the tutorials sample code @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -155,7 +202,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -165,4 +212,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html index a61a32e..360fba2 100644 --- a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html +++ b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.1 Tutorial, Using Rome to aggregate many syndication feeds into a single one @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.1 Tutorial, Using Rome to aggregate many syndication feeds into a single one

    Software requirements: J2SE 1.4+, Xerces 2.4.0, JDOM B10, Commons Codec 1.2 and Rome 0.1.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeedI instances. The SyndInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -166,17 +213,17 @@ entries.addAll(inFeed.getEntries());
     

    Following is the full code for a Java application that reads a list of syndication feed, aggregates their items into a single feed, and writes the aggregated feed to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.util.List;
     import java.util.ArrayList;
     
    -import com.sun.syndication.feed.synd.SyndFeedI;
    -import com.sun.syndication.feed.synd.SyndFeed;
    -import com.sun.syndication.feed.synd.SyndEntryI;
    -import com.sun.syndication.io.SyndInput;
    -import com.sun.syndication.io.SyndOutput;
    +import com.rometools.rome.feed.synd.SyndFeedI;
    +import com.rometools.rome.feed.synd.SyndFeed;
    +import com.rometools.rome.feed.synd.SyndEntryI;
    +import com.rometools.rome.io.SyndInput;
    +import com.rometools.rome.io.SyndOutput;
     
     public class FeedAggregator {
     
    @@ -236,7 +283,7 @@ public class FeedAggregator {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -246,4 +293,4 @@ public class FeedAggregator {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html index c3156d1..456674a 100644 --- a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html +++ b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.1 Tutorial, Using Rome to convert a syndication feed from one type to another @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.1 Tutorial, Using Rome to convert a syndication feed from one type to another

    Software requirements: Synd J2SE 1.4+, Xerces 2.4.0, JDOM B10, Commons Codec 1.2 and Rome 0.1.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeedI instances. The SyndInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -141,12 +188,12 @@ output.output(feed,System.out);
     

    Following is the full code for a Java application that reads a syndication feed and converts it to other syndication feed type, writing the converted feed to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
    -import com.sun.syndication.feed.synd.SyndFeedI;
    -import com.sun.syndication.io.SyndInput;
    -import com.sun.syndication.io.SyndOutput;
    +import com.rometools.rome.feed.synd.SyndFeedI;
    +import com.rometools.rome.io.SyndInput;
    +import com.rometools.rome.io.SyndOutput;
     
     public class FeedConverter {
     
    @@ -192,7 +239,7 @@ public class FeedConverter {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -202,4 +249,4 @@ public class FeedConverter {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToReadASyndicationFeed.html b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToReadASyndicationFeed.html index c4f7084..160a0db 100644 --- a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToReadASyndicationFeed.html +++ b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/RomeV0.1TutorialUsingRomeToReadASyndicationFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.1 Tutorial, Using Rome to read a syndication feed @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.1 Tutorial, Using Rome to read a syndication feed

    Software requirements: J2SE 1.4+, Xerces 2.4.0, JDOM B10, Commons Codec 1.2 and Rome 0.1.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeedI instances. The SyndInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -139,11 +186,11 @@ System.out.println(feed);
     

    Following is the full code for a Java application that reads a syndication feed and prints the SyndFeedI bean to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
    -import com.sun.syndication.feed.synd.SyndFeedI;
    -import com.sun.syndication.io.SyndInput;
    +import com.rometools.rome.feed.synd.SyndFeedI;
    +import com.rometools.rome.io.SyndInput;
     
     public class FeedReader {
     
    @@ -183,7 +230,7 @@ public class FeedReader {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -193,4 +240,4 @@ public class FeedReader {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/index.html b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/index.html index 9210528..2a414af 100644 --- a/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/index.html +++ b/ROMEReleases/ROME0.1Beta/RomeV0.1Tutorials/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.1 Tutorials @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -136,7 +183,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -146,4 +193,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.1Beta/index.html b/ROMEReleases/ROME0.1Beta/index.html index 79024e4..6b5402a 100644 --- a/ROMEReleases/ROME0.1Beta/index.html +++ b/ROMEReleases/ROME0.1Beta/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 0.1 Beta @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -241,7 +288,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -251,4 +298,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html b/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html index f41697c..36dbe4f 100644 --- a/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html +++ b/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.2 Tutorial, Using Rome to aggregate many syndication feeds into a single one @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.2 Tutorial, Using Rome to aggregate many syndication feeds into a single one

    Software requirements: J2SE 1.4+, JDOM B10 and Rome 0.2.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeedI instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -153,16 +200,16 @@ aggrFeed.setLink("http://www.anonymous.com");
     

    The following lines of code show how to copy the entries of a SyndFeedI instance being read (inFeed) into a SyndFeedI instance being created within the application (feed):

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.util.List;
     import java.util.ArrayList;
     
    -import com.sun.syndication.feed.synd.SyndFeedI;
    -import com.sun.syndication.feed.synd.SyndFeed;
    -import com.sun.syndication.io.SyndFeedOutput;
    -import com.sun.syndication.io.SyndFeedInput;
    +import com.rometools.rome.feed.synd.SyndFeedI;
    +import com.rometools.rome.feed.synd.SyndFeed;
    +import com.rometools.rome.io.SyndFeedOutput;
    +import com.rometools.rome.io.SyndFeedInput;
     
     /**
      * It aggregates a list of RSS/Atom feeds (they can be of different types)
    @@ -231,7 +278,7 @@ public class FeedAggregator {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -241,4 +288,4 @@ public class FeedAggregator {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html b/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html index d775c60..a81f0c8 100644 --- a/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html +++ b/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.2 Tutorial, Using Rome to convert a syndication feed from one type to another @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.2 Tutorial, Using Rome to convert a syndication feed from one type to another

    Software requirements: Synd J2SE 1.4+, JDOM B10 and Rome 0.2.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeedI instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -141,12 +188,12 @@ output.output(feed,System.out);
     

    Following is the full code for a Java application that reads a syndication feed and converts it to other syndication feed type, writing the converted feed to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
    -import com.sun.syndication.feed.synd.SyndFeedI;
    -import com.sun.syndication.io.SyndFeedInput;
    -import com.sun.syndication.io.SyndFeedOutput;
    +import com.rometools.rome.feed.synd.SyndFeedI;
    +import com.rometools.rome.io.SyndFeedInput;
    +import com.rometools.rome.io.SyndFeedOutput;
     
     /**
      * It Converts any RSS/Atom feed type to a an RSS/Atom feed of the
    @@ -199,7 +246,7 @@ public class FeedConverter {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -209,4 +256,4 @@ public class FeedConverter {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToReadASyndicationFeed.html b/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToReadASyndicationFeed.html index 4a6da73..d1adfe0 100644 --- a/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToReadASyndicationFeed.html +++ b/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/RomeV0.2TutorialUsingRomeToReadASyndicationFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.2 Tutorial, Using Rome to read a syndication feed @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.2 Tutorial, Using Rome to read a syndication feed

    Software requirements: J2SE 1.4+, JDOM B10 and Rome 0.2.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeedI instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -139,11 +186,11 @@ System.out.println(feed);
     

    Following is the full code for a Java application that reads a syndication feed and prints the SyndFeedI bean to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
    -import com.sun.syndication.feed.synd.SyndFeedI;
    -import com.sun.syndication.io.SyndFeedInput;
    +import com.rometools.rome.feed.synd.SyndFeedI;
    +import com.rometools.rome.io.SyndFeedInput;
     
     /**
      * It Reads and prints any RSS/Atom feed type.
    @@ -190,7 +237,7 @@ public class FeedReader {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -200,4 +247,4 @@ public class FeedReader {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/index.html b/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/index.html index 5cec07e..e630131 100644 --- a/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/index.html +++ b/ROMEReleases/ROME0.2Beta/RomeV0.2Tutorials/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.2 Tutorials @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -136,7 +183,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -146,4 +193,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.2Beta/index.html b/ROMEReleases/ROME0.2Beta/index.html index b6539fa..f396128 100644 --- a/ROMEReleases/ROME0.2Beta/index.html +++ b/ROMEReleases/ROME0.2Beta/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 0.2 Beta @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -239,7 +286,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -249,4 +296,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3HowToBuildAndRunTheTutorialsSampleCode.html b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3HowToBuildAndRunTheTutorialsSampleCode.html index e8d8807..09ad455 100644 --- a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3HowToBuildAndRunTheTutorialsSampleCode.html +++ b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3HowToBuildAndRunTheTutorialsSampleCode.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.3, How to build and run the tutorials sample code @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -161,7 +208,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -171,4 +218,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialDefiningACustomModuleBeanParserAndGenerator.html b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialDefiningACustomModuleBeanParserAndGenerator.html index b67a4c9..a07669d 100644 --- a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialDefiningACustomModuleBeanParserAndGenerator.html +++ b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialDefiningACustomModuleBeanParserAndGenerator.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.3 Tutorial, Defining a Custom Module (bean, parser and generator) @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -353,19 +400,19 @@ public class SampleModuleGenerator implements ModuleGenerator {
     # Parsers for RSS 1.0 feed modules
     #
    -rss_1.0.feed.ModuleParser.classes=com.sun.syndication.samples.module.SampleModuleParser
    +rss_1.0.feed.ModuleParser.classes=com.rometools.rome.samples.module.SampleModuleParser
     
     # Parsers for RSS 1.0 item modules
     #
    -rss_1.0.item.ModuleParser.classes=com.sun.syndication.samples.module.SampleModuleParser
    +rss_1.0.item.ModuleParser.classes=com.rometools.rome.samples.module.SampleModuleParser
     
     # Generators for RSS 1.0 feed modules
     #
    -rss_1.0.feed.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleModuleGenerator
    +rss_1.0.feed.ModuleGenerator.classes=com.rometools.rome.samples.module.SampleModuleGenerator
     
     # Generators for RSS_1.0 entry modules
     #
    -rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleModuleGenerator
    +rss_1.0.item.ModuleGenerator.classes=com.rometools.rome.samples.module.SampleModuleGenerator
     

    If you are defining more than one module, indicate the parser and generator implementation classes separated by commas or spaces.

    @@ -380,7 +427,7 @@ rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleMo
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -390,4 +437,4 @@ rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleMo
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html index d17c46e..68fc3fd 100644 --- a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html +++ b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToAggregateManySyndicationFeedsIntoASingleOne.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.3 Tutorial, Using Rome to aggregate many syndication feeds into a single one @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.3 Tutorial, Using Rome to aggregate many syndication feeds into a single one

    Software requirements: J2SE 1.4+, JDOM B10 and Rome 0.3.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeedI instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -154,7 +201,7 @@ aggrFeed.setLink("http://www.anonymous.com");
     

    The following lines of code show how to copy the entries of a SyndFeedI instance being read (inFeed) into a SyndFeedI instance being created within the application (feed):

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.io.InputStreamReader;
    @@ -162,10 +209,10 @@ import java.io.PrintWriter;
     import java.util.List;
     import java.util.ArrayList;
     
    -import com.sun.syndication.feed.synd.SyndFeedI;
    -import com.sun.syndication.feed.synd.SyndFeed;
    -import com.sun.syndication.io.SyndFeedOutput;
    -import com.sun.syndication.io.SyndFeedInput;
    +import com.rometools.rome.feed.synd.SyndFeedI;
    +import com.rometools.rome.feed.synd.SyndFeed;
    +import com.rometools.rome.io.SyndFeedOutput;
    +import com.rometools.rome.io.SyndFeedInput;
     
     /**
      * It aggregates a list of RSS/Atom feeds (they can be of different types)
    @@ -234,7 +281,7 @@ public class FeedAggregator {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -244,4 +291,4 @@ public class FeedAggregator {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html index 4efbe3f..bdde7c5 100644 --- a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html +++ b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToConvertASyndicationFeedFromOneTypeToAnother.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.3 Tutorial, Using Rome to convert a syndication feed from one type to another @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.3 Tutorial, Using Rome to convert a syndication feed from one type to another

    Software requirements: Synd J2SE 1.4+, JDOM B10 and Rome 0.3.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeedI instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -141,14 +188,14 @@ output.output(feed,new PrintWriter(System.out));
     

    Following is the full code for a Java application that reads a syndication feed and converts it to other syndication feed type, writing the converted feed to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.io.InputStreamReader;
     import java.io.PrintWriter;
    -import com.sun.syndication.feed.synd.SyndFeedI;
    -import com.sun.syndication.io.SyndFeedInput;
    -import com.sun.syndication.io.SyndFeedOutput;
    +import com.rometools.rome.feed.synd.SyndFeedI;
    +import com.rometools.rome.io.SyndFeedInput;
    +import com.rometools.rome.io.SyndFeedOutput;
     
     /**
      * It Converts any RSS/Atom feed type to a an RSS/Atom feed of the
    @@ -201,7 +248,7 @@ public class FeedConverter {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -211,4 +258,4 @@ public class FeedConverter {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToCreateAndWriteASyndicationFeed.html b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToCreateAndWriteASyndicationFeed.html index 49c8bee..2c1937c 100644 --- a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToCreateAndWriteASyndicationFeed.html +++ b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToCreateAndWriteASyndicationFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.3 Tutorial, Using Rome to create and write a syndication feed @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.3 Tutorial, Using Rome to create and write a syndication feed

    Software requirements: J2SE 1.4+, JDOM B10 and Rome 0.3.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Creating a feed with SyndFeedI beans consists of creating beans and setting their properties. The following code fragments show how a SyndFeedI bean with 3 entries is created.

    First the SyndFeedI instance is created, the preferred syndication format is set and the feed header info (title, link, description) is also set.

    @@ -182,10 +229,10 @@ output.output(feed,writer);

    Following is the full code for a Java application that creates a syndication feed and writes it to a file in the specified syndication format.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
    -import com.sun.syndication.feed.synd.*;
    -import com.sun.syndication.io.SyndFeedOutput;
    +import com.rometools.rome.feed.synd.*;
    +import com.rometools.rome.io.SyndFeedOutput;
     
     import java.io.FileWriter;
     import java.io.Writer;
    @@ -289,7 +336,7 @@ public class FeedWriter {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -299,4 +346,4 @@ public class FeedWriter {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToReadASyndicationFeed.html b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToReadASyndicationFeed.html index d6d3337..85b67fc 100644 --- a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToReadASyndicationFeed.html +++ b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/RomeV0.3TutorialUsingRomeToReadASyndicationFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.3 Tutorial, Using Rome to read a syndication feed @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    Rome v0.3 Tutorial, Using Rome to read a syndication feed

    Software requirements: J2SE 1.4+, JDOM B10 and Rome 0.3.

    -

    Rome represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    +

    Rome represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeedI interface. The SyndFeedI interfaces and its properties follow the Java Bean patterns. The default implementations provided with Rome are all lightweight classes.

    Rome includes parsers to process syndication feeds into SyndFeedI instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using Rome are the following 2 lines of code:

    @@ -140,12 +187,12 @@ System.out.println(feed);
     

    Following is the full code for a Java application that reads a syndication feed and prints the SyndFeedI bean to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.io.InputStreamReader;
    -import com.sun.syndication.feed.synd.SyndFeedI;
    -import com.sun.syndication.io.SyndFeedInput;
    +import com.rometools.rome.feed.synd.SyndFeedI;
    +import com.rometools.rome.io.SyndFeedInput;
     
     /**
      * It Reads and prints any RSS/Atom feed type.
    @@ -192,7 +239,7 @@ public class FeedReader {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -202,4 +249,4 @@ public class FeedReader {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/index.html b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/index.html index 1c32996..e60f0ed 100644 --- a/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/index.html +++ b/ROMEReleases/ROME0.3Beta/RomeV0.3Tutorials/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.3 Tutorials @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -138,7 +185,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -148,4 +195,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.3Beta/index.html b/ROMEReleases/ROME0.3Beta/index.html index 37e1163..139f02e 100644 --- a/ROMEReleases/ROME0.3Beta/index.html +++ b/ROMEReleases/ROME0.3Beta/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 0.3 Beta @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -239,7 +286,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -249,4 +296,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/RomeV0.4HowToBuildAndRunTheTutorialsSampleCode.html b/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/RomeV0.4HowToBuildAndRunTheTutorialsSampleCode.html index 25e19e7..bdadc70 100644 --- a/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/RomeV0.4HowToBuildAndRunTheTutorialsSampleCode.html +++ b/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/RomeV0.4HowToBuildAndRunTheTutorialsSampleCode.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.4, How to build and run the tutorials sample code @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -162,7 +209,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -172,4 +219,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/RomeV0.4TutorialUsingRomeWithinAServletToCreateAndReturnAFeed.html b/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/RomeV0.4TutorialUsingRomeWithinAServletToCreateAndReturnAFeed.html index 11c77f2..fedfa64 100644 --- a/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/RomeV0.4TutorialUsingRomeWithinAServletToCreateAndReturnAFeed.html +++ b/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/RomeV0.4TutorialUsingRomeWithinAServletToCreateAndReturnAFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.4 Tutorial, Using Rome within a Servlet to create and return a feed @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -159,11 +206,11 @@ public class FeedServlet extends HttpServlet {

    Following is the full code for the servlet.

    -package com.sun.syndication.samples.servlet;
    +package com.rometools.rome.samples.servlet;
     
    -import com.sun.syndication.feed.synd.*;
    -import com.sun.syndication.io.FeedException;
    -import com.sun.syndication.io.SyndFeedOutput;
    +import com.rometools.rome.feed.synd.*;
    +import com.rometools.rome.io.FeedException;
    +import com.rometools.rome.io.SyndFeedOutput;
     
     import javax.servlet.http.HttpServlet;
     import javax.servlet.http.HttpServletRequest;
    @@ -310,7 +357,7 @@ public class FeedServlet extends HttpServlet {
     
         <servlet>
             <servlet-name>FeedServlet</servlet-name>
    -        <servlet-class>com.sun.syndication.samples.servlet.FeedServlet</servlet-class>
    +        <servlet-class>com.rometools.rome.samples.servlet.FeedServlet</servlet-class>
             <init-param>
                 <param-name>default.feed.type</param-name>
                 <param-value>rss_2.0</param-value>
    @@ -333,7 +380,7 @@ public class FeedServlet extends HttpServlet {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -343,4 +390,4 @@ public class FeedServlet extends HttpServlet {
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/index.html b/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/index.html index fb0b609..4fdf89d 100644 --- a/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/index.html +++ b/ROMEReleases/ROME0.4Beta/RomeV0.4Tutorials/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.4 Tutorials @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -139,7 +186,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -149,4 +196,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.4Beta/index.html b/ROMEReleases/ROME0.4Beta/index.html index 1be1adc..248065f 100644 --- a/ROMEReleases/ROME0.4Beta/index.html +++ b/ROMEReleases/ROME0.4Beta/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 0.4 Beta @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -256,7 +303,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -266,4 +313,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.5Beta/ROMET-Shirt.html b/ROMEReleases/ROME0.5Beta/ROMET-Shirt.html index 21d2e3c..c1f4b19 100644 --- a/ROMEReleases/ROME0.5Beta/ROMET-Shirt.html +++ b/ROMEReleases/ROME0.5Beta/ROMET-Shirt.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME T-Shirt @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -134,7 +181,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -144,4 +191,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.5Beta/index.html b/ROMEReleases/ROME0.5Beta/index.html index f6e7857..93f44f2 100644 --- a/ROMEReleases/ROME0.5Beta/index.html +++ b/ROMEReleases/ROME0.5Beta/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 0.5 Beta @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -256,7 +303,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -266,4 +313,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.6Beta.html b/ROMEReleases/ROME0.6Beta.html index 8cf272b..83395c3 100644 --- a/ROMEReleases/ROME0.6Beta.html +++ b/ROMEReleases/ROME0.6Beta.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 0.6 Beta @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -253,7 +300,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -263,4 +310,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.7Beta.html b/ROMEReleases/ROME0.7Beta.html index b3feedb..06164df 100644 --- a/ROMEReleases/ROME0.7Beta.html +++ b/ROMEReleases/ROME0.7Beta.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 0.7 Beta @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -254,7 +301,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -264,4 +311,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.8Beta.html b/ROMEReleases/ROME0.8Beta.html index 9a0583c..bb4da65 100644 --- a/ROMEReleases/ROME0.8Beta.html +++ b/ROMEReleases/ROME0.8Beta.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 0.8 Beta @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -255,7 +302,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -265,4 +312,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME0.9Beta.html b/ROMEReleases/ROME0.9Beta.html index c5c13b4..5c0f754 100644 --- a/ROMEReleases/ROME0.9Beta.html +++ b/ROMEReleases/ROME0.9Beta.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 0.9 Beta @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -258,7 +305,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -268,4 +315,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME1.0RC1.html b/ROMEReleases/ROME1.0RC1.html index ffea3d1..b3e87f6 100644 --- a/ROMEReleases/ROME1.0RC1.html +++ b/ROMEReleases/ROME1.0RC1.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 1.0 RC1 @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -243,7 +290,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -253,4 +300,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME1.0RC2.html b/ROMEReleases/ROME1.0RC2.html index 1eeb788..c9f79b0 100644 --- a/ROMEReleases/ROME1.0RC2.html +++ b/ROMEReleases/ROME1.0RC2.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 1.0 RC2 @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -238,7 +285,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -248,4 +295,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/ROME1.0Release.html b/ROMEReleases/ROME1.0Release.html index b940d1e..882cf9f 100644 --- a/ROMEReleases/ROME1.0Release.html +++ b/ROMEReleases/ROME1.0Release.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME 1.0 Release @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -240,7 +287,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -250,4 +297,4 @@
    - \ No newline at end of file + diff --git a/ROMEReleases/index.html b/ROMEReleases/index.html index a11fcde..aad5763 100644 --- a/ROMEReleases/index.html +++ b/ROMEReleases/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - ROME Releases @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -176,8 +188,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -254,7 +301,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -264,4 +311,4 @@
    - \ No newline at end of file + diff --git a/RomeAPIFAQ.html b/RomeAPIFAQ.html index c89359a..312e61c 100644 --- a/RomeAPIFAQ.html +++ b/RomeAPIFAQ.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome API FAQ @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -184,7 +231,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -194,4 +241,4 @@
    - \ No newline at end of file + diff --git a/RomeV0.4FeedAndEntryURIMapping.html b/RomeV0.4FeedAndEntryURIMapping.html index 7d625e6..6009c0f 100644 --- a/RomeV0.4FeedAndEntryURIMapping.html +++ b/RomeV0.4FeedAndEntryURIMapping.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rome v0.4, Feed and Entry URI Mapping @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -169,7 +216,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -179,4 +226,4 @@
    - \ No newline at end of file + diff --git a/RssAndAtOMUtiliEsROMEV0.7DateAndTimeParsing.html b/RssAndAtOMUtiliEsROMEV0.7DateAndTimeParsing.html index e1ba3e9..f3dae19 100644 --- a/RssAndAtOMUtiliEsROMEV0.7DateAndTimeParsing.html +++ b/RssAndAtOMUtiliEsROMEV0.7DateAndTimeParsing.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utiliEs (ROME) v0.7 Date and Time Parsing @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -143,7 +190,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -153,4 +200,4 @@
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/FeedAndEntryURIMappingHowSyndFeedAndSyndEntryUriPropertiesMapToRSSAndAtomElements.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/FeedAndEntryURIMappingHowSyndFeedAndSyndEntryUriPropertiesMapToRSSAndAtomElements.html index f6c53c9..7752961 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/FeedAndEntryURIMappingHowSyndFeedAndSyndEntryUriPropertiesMapToRSSAndAtomElements.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/FeedAndEntryURIMappingHowSyndFeedAndSyndEntryUriPropertiesMapToRSSAndAtomElements.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Feed and Entry URI Mapping, how SyndFeed and SyndEntry 'uri' properties map to RSS and Atom elements @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -168,7 +215,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -178,4 +225,4 @@
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/FeedsDateElementsMappingToSyndFeedAndSyndEntry.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/FeedsDateElementsMappingToSyndFeedAndSyndEntry.html index b10c2fe..8b589e7 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/FeedsDateElementsMappingToSyndFeedAndSyndEntry.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/FeedsDateElementsMappingToSyndFeedAndSyndEntry.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Feeds Date Elements Mapping to SyndFeed and SyndEntry @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -162,7 +209,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -172,4 +219,4 @@
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEPluginsMechanism.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEPluginsMechanism.html index 6f0d818..a7a119a 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEPluginsMechanism.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEPluginsMechanism.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utilitiEs (ROME) Plugins Mechanism @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,7 +168,7 @@
    -

    Rss and atOM utilitiEs (ROME) Plugins Mechanism

    +

    Plugins Mechanism

    ROME has been designed around a plugin mechanism. All the supported feed types (RSSs and Atom) is done by plugins included in the distribution.

    Parsing feeds, generating feeds, converting feeds from a concrete feed to a SyndFeed and vice versa, parsing modules and generating modules is done using plugins.

    Plugins for new functionality can be added and default plugins can be easily replaced with alternate plugins.

    @@ -131,88 +178,88 @@

    The default plugins definition file is included in the ROME JAR file, com/sun/syndication/rome.properties, this is the first plugins definition file to be processed. It defines the default parsers, generators and converters for feeds and modules ROME provides.

    After loading the default plugins definition file, ROME looks for additional plugins definition files in all the CLASSPATH entries, this time at root level, /rome.properties. And appends the plugins definitions to the existing ones. Note that if there are several /rome.properties files in the different CLASSPATH entries all of them are processed. The order of processing depends on how the ClassLoader processes the CLASSPATH entries, this is normally done in the order of appearance -of the entry- in the CLASSPATH.

    For each type of plugin (parser, generator, converter, ect) a list of available plugins is built following the read order just described. The plugins classes are then loaded and instantiated. All plugins have some kind of primary key. In the case or parsers, generators and converters the primary key is the type of feed they handle. In the case of modules, the primary key is the module URI. If a plugin list definition (the aggregation of all the plugins of the same time from all the rome.properties) contains more than one plugin with the same primary key, the latter one is the one that will be used(this enables replacing default plugins with custom ones).

    -

    The plugins are read, loaded and managed by the implementation class com.sun.syndication.io.impl.PluginManager. This class is an abstract class and it is extended to provide support for each type of plugin.

    +

    The plugins are read, loaded and managed by the implementation class com.rometools.rome.io.impl.PluginManager. This class is an abstract class and it is extended to provide support for each type of plugin.

    Parser Plugins

    -

    Parser plugins are managed by the com.sun.syndication.io.impl.FeedParsers class (subclass of the PluginManager). This plugin manager looks for the WireFeedParser.classes property in all the rome.properties files. The fully qualified names of the parser classes must be separated by whitespaces or commas. For example, the default rome.properties file parser plugins definition is as follows:

    +

    Parser plugins are managed by the com.rometools.rome.io.impl.FeedParsers class (subclass of the PluginManager). This plugin manager looks for the WireFeedParser.classes property in all the rome.properties files. The fully qualified names of the parser classes must be separated by whitespaces or commas. For example, the default rome.properties file parser plugins definition is as follows:

     # Feed Parser implementation classes
     #
    -WireFeedParser.classes=com.sun.syndication.io.impl.RSS090Parser \
    -                       com.sun.syndication.io.impl.RSS091NetscapeParser \
    -                       com.sun.syndication.io.impl.RSS091UserlandParser \
    -                       com.sun.syndication.io.impl.RSS092Parser \
    -                       com.sun.syndication.io.impl.RSS093Parser \
    -                       com.sun.syndication.io.impl.RSS094Parser \
    -                       com.sun.syndication.io.impl.RSS10Parser  \
    -                       com.sun.syndication.io.impl.RSS20wNSParser  \
    -                       com.sun.syndication.io.impl.RSS20Parser  \
    -                       com.sun.syndication.io.impl.Atom03Parser
    +WireFeedParser.classes=com.rometools.rome.io.impl.RSS090Parser \
    +                       com.rometools.rome.io.impl.RSS091NetscapeParser \
    +                       com.rometools.rome.io.impl.RSS091UserlandParser \
    +                       com.rometools.rome.io.impl.RSS092Parser \
    +                       com.rometools.rome.io.impl.RSS093Parser \
    +                       com.rometools.rome.io.impl.RSS094Parser \
    +                       com.rometools.rome.io.impl.RSS10Parser  \
    +                       com.rometools.rome.io.impl.RSS20wNSParser  \
    +                       com.rometools.rome.io.impl.RSS20Parser  \
    +                       com.rometools.rome.io.impl.Atom03Parser
     
    -

    All the classes defined in this property have to implement the com.sun.syndication.io.WireFeedParser interface. Parser instances must be thread safe. The return value of the getType() method is used as the primary key. If more than one parser returns the same type, the latter one prevails.

    +

    All the classes defined in this property have to implement the com.rometools.rome.io.WireFeedParser interface. Parser instances must be thread safe. The return value of the getType() method is used as the primary key. If more than one parser returns the same type, the latter one prevails.

    Generator Plugins

    -

    Generator plugins are managed by the com.sun.syndication.io.impl.FeedGenerators class (subclass of the PluginManager). This plugin manager looks for the WireFeedGenerator.classes property in all the rome.properties files. The fully qualified names of the generator classes must be separated by whitespaces or commas. For example, the default rome.properties file generator plugins definition is as follows:

    +

    Generator plugins are managed by the com.rometools.rome.io.impl.FeedGenerators class (subclass of the PluginManager). This plugin manager looks for the WireFeedGenerator.classes property in all the rome.properties files. The fully qualified names of the generator classes must be separated by whitespaces or commas. For example, the default rome.properties file generator plugins definition is as follows:

     # Feed Generator implementation classes
     #
    -WireFeedGenerator.classes=com.sun.syndication.io.impl.RSS090Generator \
    -                          com.sun.syndication.io.impl.RSS091NetscapeGenerator \
    -                          com.sun.syndication.io.impl.RSS091UserlandGenerator \
    -                          com.sun.syndication.io.impl.RSS092Generator \
    -                          com.sun.syndication.io.impl.RSS093Generator \
    -                          com.sun.syndication.io.impl.RSS094Generator \
    -                          com.sun.syndication.io.impl.RSS10Generator  \
    -                          com.sun.syndication.io.impl.RSS20Generator  \
    -                          com.sun.syndication.io.impl.Atom03Generator
    +WireFeedGenerator.classes=com.rometools.rome.io.impl.RSS090Generator \
    +                          com.rometools.rome.io.impl.RSS091NetscapeGenerator \
    +                          com.rometools.rome.io.impl.RSS091UserlandGenerator \
    +                          com.rometools.rome.io.impl.RSS092Generator \
    +                          com.rometools.rome.io.impl.RSS093Generator \
    +                          com.rometools.rome.io.impl.RSS094Generator \
    +                          com.rometools.rome.io.impl.RSS10Generator  \
    +                          com.rometools.rome.io.impl.RSS20Generator  \
    +                          com.rometools.rome.io.impl.Atom03Generator
     
    -

    All the classes defined in this property have to implement the com.sun.syndication.io.WireFeedGenerator interface. Generator instances must be thread safe. The return value of the getType() method is used as the primary key. If more than one generator returns the same type, the latter one prevails.

    +

    All the classes defined in this property have to implement the com.rometools.rome.io.WireFeedGenerator interface. Generator instances must be thread safe. The return value of the getType() method is used as the primary key. If more than one generator returns the same type, the latter one prevails.

    Converter Plugins

    -

    Converter plugins are managed by the com.sun.syndication.synd.impl.Converters class (subclass of the PluginManager). This plugin manager looks for the Converter.classes property in all the rome.properties files. The fully qualified names of the converter classes must be separated by whitespaces or commas. For example, the default rome.properties file converter plugins definition is as follows:

    +

    Converter plugins are managed by the com.rometools.rome.synd.impl.Converters class (subclass of the PluginManager). This plugin manager looks for the Converter.classes property in all the rome.properties files. The fully qualified names of the converter classes must be separated by whitespaces or commas. For example, the default rome.properties file converter plugins definition is as follows:

     # Feed Conversor implementation classes
     #
    -Converter.classes=com.sun.syndication.feed.synd.impl.ConverterForAtom03 \
    -                  com.sun.syndication.feed.synd.impl.ConverterForRSS090 \
    -                  com.sun.syndication.feed.synd.impl.ConverterForRSS091Netscape \
    -                  com.sun.syndication.feed.synd.impl.ConverterForRSS091Userland \
    -                  com.sun.syndication.feed.synd.impl.ConverterForRSS092 \
    -                  com.sun.syndication.feed.synd.impl.ConverterForRSS093 \
    -                  com.sun.syndication.feed.synd.impl.ConverterForRSS094 \
    -                  com.sun.syndication.feed.synd.impl.ConverterForRSS10  \
    -                  com.sun.syndication.feed.synd.impl.ConverterForRSS20
    +Converter.classes=com.rometools.rome.feed.synd.impl.ConverterForAtom03 \
    +                  com.rometools.rome.feed.synd.impl.ConverterForRSS090 \
    +                  com.rometools.rome.feed.synd.impl.ConverterForRSS091Netscape \
    +                  com.rometools.rome.feed.synd.impl.ConverterForRSS091Userland \
    +                  com.rometools.rome.feed.synd.impl.ConverterForRSS092 \
    +                  com.rometools.rome.feed.synd.impl.ConverterForRSS093 \
    +                  com.rometools.rome.feed.synd.impl.ConverterForRSS094 \
    +                  com.rometools.rome.feed.synd.impl.ConverterForRSS10  \
    +                  com.rometools.rome.feed.synd.impl.ConverterForRSS20
     
    -

    All the classes defined in this property have to implement the com.sun.syndication.synd.Converter interface. Converter instances must be thread safe. The return value of the getType() method is used as the primary key. If more than one converter returns the same type, the latter one prevails.

    +

    All the classes defined in this property have to implement the com.rometools.rome.synd.Converter interface. Converter instances must be thread safe. The return value of the getType() method is used as the primary key. If more than one converter returns the same type, the latter one prevails.

    Module Plugins

    There are 2 types of module plugins, module parser plugins and module generator plugins. They use a same pattern feed parsers and generators use.

    The main difference is that support for module plugins has to be wired in the feed parser and generator plugins. The default feed parser and generator plugins supporting module plugins are: RSS 1.0, RSS 2.0 and Atom 0.3.

    It is important to understand that this wiring is for modules support. Once a feed parser or generator has modules support, new modules can be used just by adding them to right property in the rome.properties file. No code changes are required.

    Module parsers and generators are defined at feed and item level. This allow selective handling of modules, for example handling Syndication module at feed level only.

    -

    Module parser plugins are managed by the com.sun.syndication.io.impl.ModuleParsers class (subclass of the PluginManager). This plugin manager looks for the .feed.ModuleParser.classes and the .item.ModuleParser.classes properties in all the rome.properties files. must be the type defined by the parser (ie: rss_1.0, atom_0.3). The fully qualified names of the module parser classes must be separated by whitespaces or commas. For example, the default rome.properties file modules parser plugins definition is as follows:

    +

    Module parser plugins are managed by the com.rometools.rome.io.impl.ModuleParsers class (subclass of the PluginManager). This plugin manager looks for the .feed.ModuleParser.classes and the .item.ModuleParser.classes properties in all the rome.properties files. must be the type defined by the parser (ie: rss_1.0, atom_0.3). The fully qualified names of the module parser classes must be separated by whitespaces or commas. For example, the default rome.properties file modules parser plugins definition is as follows:

     # Parsers for Atom 0.3 feed modules
     #
    -atom_0.3.feed.ModuleParser.classes=com.sun.syndication.io.impl.SyModuleParser \
    -                          com.sun.syndication.io.impl.DCModuleParser
    +atom_0.3.feed.ModuleParser.classes=com.rometools.rome.io.impl.SyModuleParser \
    +                          com.rometools.rome.io.impl.DCModuleParser
     
     # Parsers for Atom 0.3 entry modules
     #
    -atom_0.3.item.ModuleParser.classes=com.sun.syndication.io.impl.DCModuleParser
    +atom_0.3.item.ModuleParser.classes=com.rometools.rome.io.impl.DCModuleParser
     
     # Parsers for RSS 1.0 feed modules
     #
    -rss_1.0.feed.ModuleParser.classes=com.sun.syndication.io.impl.SyModuleParser \
    -                          com.sun.syndication.io.impl.DCModuleParser
    +rss_1.0.feed.ModuleParser.classes=com.rometools.rome.io.impl.SyModuleParser \
    +                          com.rometools.rome.io.impl.DCModuleParser
     
     # Parsers for RSS 1.0 item modules
     #
    -rss_1.0.item.ModuleParser.classes=com.sun.syndication.io.impl.DCModuleParser
    +rss_1.0.item.ModuleParser.classes=com.rometools.rome.io.impl.DCModuleParser
     
     # Parsers for RSS 2.0 feed modules
     #
    @@ -222,27 +269,27 @@ rss_2.0.feed.ModuleParser.classes=
     #
     rss_2.0.item.ModuleParser.classes=
     
    -

    All the classes defined in this property have to implement the com.sun.syndication.io.ModuleParser interface. ModuleParser instances must be thread safe. The return value of the getNamesapceUri() method is used as the primary key. If more than one module parser returns the same URI, the latter one prevails.

    -

    Module generator plugins are managed by the com.sun.syndication.io.impl.GeneratorParsers class (subclass of the PluginManager). This plugin manager looks for the .feed.ModuleGenerator.classes and the .item.ModuleGenerator.classes properties in all the rome.properties files. must be the type defined by the generator (ie: rss_1.0, atom_0.3). The fully qualified names of the module generator classes must be separated by whitespaces or commas. For example, the default rome.properties file modules generator plugins definition is as follows:

    +

    All the classes defined in this property have to implement the com.rometools.rome.io.ModuleParser interface. ModuleParser instances must be thread safe. The return value of the getNamesapceUri() method is used as the primary key. If more than one module parser returns the same URI, the latter one prevails.

    +

    Module generator plugins are managed by the com.rometools.rome.io.impl.GeneratorParsers class (subclass of the PluginManager). This plugin manager looks for the .feed.ModuleGenerator.classes and the .item.ModuleGenerator.classes properties in all the rome.properties files. must be the type defined by the generator (ie: rss_1.0, atom_0.3). The fully qualified names of the module generator classes must be separated by whitespaces or commas. For example, the default rome.properties file modules generator plugins definition is as follows:

     # Generators for Atom 0.3 feed modules
     #
    -atom_0.3.feed.ModuleGenerator.classes=com.sun.syndication.io.impl.SyModuleGenerator \
    -                             com.sun.syndication.io.impl.DCModuleGenerator
    +atom_0.3.feed.ModuleGenerator.classes=com.rometools.rome.io.impl.SyModuleGenerator \
    +                             com.rometools.rome.io.impl.DCModuleGenerator
     
     # Generators for Atom 0.3 entry modules
     #
    -atom_0.3.item.ModuleGenerator.classes=com.sun.syndication.io.impl.DCModuleGenerator
    +atom_0.3.item.ModuleGenerator.classes=com.rometools.rome.io.impl.DCModuleGenerator
     
     # Generators for RSS 1.0 feed modules
     #
    -rss_1.0.feed.ModuleGenerator.classes=com.sun.syndication.io.impl.SyModuleGenerator \
    -                             com.sun.syndication.io.impl.DCModuleGenerator
    +rss_1.0.feed.ModuleGenerator.classes=com.rometools.rome.io.impl.SyModuleGenerator \
    +                             com.rometools.rome.io.impl.DCModuleGenerator
     
     # Generators for RSS_1.0 entry modules
     #
    -rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.io.impl.DCModuleGenerator
    +rss_1.0.item.ModuleGenerator.classes=com.rometools.rome.io.impl.DCModuleGenerator
     
     # Generators for RSS 2.0 feed modules
     #
    @@ -252,7 +299,7 @@ rss_2.0.feed.ModuleGenerator.classes=
     #
     rss_2.0.item.ModuleGenerator.classes=
     
    -

    All the classes defined in this property have to implement the com.sun.syndication.io.ModuleGenerator interface. ModuleGenerator instances must be thread safe. The return value of the getNamesapceUri() method is used as the primary key. If more than one module generator returns the same URI, the latter one prevails.

    +

    All the classes defined in this property have to implement the com.rometools.rome.io.ModuleGenerator interface. ModuleGenerator instances must be thread safe. The return value of the getNamesapceUri() method is used as the primary key. If more than one module generator returns the same URI, the latter one prevails.

    See also: a step-by-step tutorial for implementing a custom module.

    @@ -262,7 +309,7 @@ rss_2.0.item.ModuleGenerator.classes= - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5HowToBuildAndRunTheTutorialsSampleCode.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5HowToBuildAndRunTheTutorialsSampleCode.html index ea22fb6..b79e0d4 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5HowToBuildAndRunTheTutorialsSampleCode.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5HowToBuildAndRunTheTutorialsSampleCode.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utilitiEs (ROME) v0.5, How to build and run the tutorials sample code @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,7 +168,7 @@
    -

    Rss and atOM utilitiEs (ROME) v0.5, How to build and run the tutorials sample code

    +

    How to build and run the tutorials sample code

    These instructions are outdated

    Building the samples with Maven

    @@ -163,7 +210,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -173,4 +220,4 @@
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialDefiningACustomModuleBeanParserAndGenerator.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialDefiningACustomModuleBeanParserAndGenerator.html index c5bb0e4..e13d315 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialDefiningACustomModuleBeanParserAndGenerator.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialDefiningACustomModuleBeanParserAndGenerator.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Defining a Custom Module (bean, parser and generator) @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,8 +168,7 @@
    -

    Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Defining a Custom Module (bean, parser and generator)

    -

    Software requirements: Synd J2SE 1.4+, JDOM 1.0 and ROME 0.5.

    +

    Defining a Custom Module (bean, parser and generator)

    This tutorial walks through the steps of creating a custom module for syndication feeds that support additional namespaces (such as RSS 1.0, RSS 2.0 and Atom 0.3).

    To understand this tutorial you should be familiar the with ROME API and with the use of modules in syndication feeds.

    Out of the box ROME parsers and generators support plug-ability of modules for RSS 1.0, RSS 2.0 and Atom 0.3 at both feed and item/entry levels. Also support for the Dublin Core and Syndication modules is provided.

    @@ -369,19 +415,19 @@ public class SampleModuleGenerator implements ModuleGenerator {
     # Parsers for RSS 1.0 feed modules
     #
    -rss_1.0.feed.ModuleParser.classes=com.sun.syndication.samples.module.SampleModuleParser
    +rss_1.0.feed.ModuleParser.classes=com.rometools.rome.samples.module.SampleModuleParser
     
     # Parsers for RSS 1.0 item modules
     #
    -rss_1.0.item.ModuleParser.classes=com.sun.syndication.samples.module.SampleModuleParser
    +rss_1.0.item.ModuleParser.classes=com.rometools.rome.samples.module.SampleModuleParser
     
     # Generators for RSS 1.0 feed modules
     #
    -rss_1.0.feed.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleModuleGenerator
    +rss_1.0.feed.ModuleGenerator.classes=com.rometools.rome.samples.module.SampleModuleGenerator
     
     # Generators for RSS_1.0 entry modules
     #
    -rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleModuleGenerator
    +rss_1.0.item.ModuleGenerator.classes=com.rometools.rome.samples.module.SampleModuleGenerator
     

    If you are defining more than one module, indicate the parser and generator implementation classes separated by commas or spaces.

    @@ -396,7 +442,7 @@ rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleMo
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -406,4 +452,4 @@ rss_1.0.item.ModuleGenerator.classes=com.sun.syndication.samples.module.SampleMo
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToAggregateManySyndicationFeedsIntoASingleOne.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToAggregateManySyndicationFeedsIntoASingleOne.html index 7dfc56b..706f48d 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToAggregateManySyndicationFeedsIntoASingleOne.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToAggregateManySyndicationFeedsIntoASingleOne.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME to aggregate many syndication feeds into a single one @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,9 +168,8 @@
    -

    Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME to aggregate many syndication feeds into a single one

    -

    Software requirements: J2SE 1.4+, JDOM 1.0 and ROME 0.5.

    -

    ROME represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with ROME are all lightweight classes.

    +

    Using ROME to aggregate many syndication feeds into a single one

    +

    ROME represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with ROME are all lightweight classes.

    ROME includes parsers to process syndication feeds into SyndFeed instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using ROME are the following 2 lines of code:

    @@ -153,7 +199,7 @@ aggrFeed.setLink("http://www.anonymous.com");
     

    The following lines of code show how to copy the entries of a SyndFeed instance being read (inFeed) into a SyndFeed instance being created within the application (feed):

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.io.InputStreamReader;
    @@ -161,11 +207,11 @@ import java.io.PrintWriter;
     import java.util.List;
     import java.util.ArrayList;
     
    -import com.sun.syndication.feed.synd.SyndFeed;
    -import com.sun.syndication.feed.synd.SyndFeedImpl;
    -import com.sun.syndication.io.SyndFeedOutput;
    -import com.sun.syndication.io.SyndFeedInput;
    -import com.sun.syndication.io.XmlReader;
    +import com.rometools.rome.feed.synd.SyndFeed;
    +import com.rometools.rome.feed.synd.SyndFeedImpl;
    +import com.rometools.rome.io.SyndFeedOutput;
    +import com.rometools.rome.io.SyndFeedInput;
    +import com.rometools.rome.io.XmlReader;
     
     /**
      * It aggregates a list of RSS/Atom feeds (they can be of different types)
    @@ -234,7 +280,7 @@ public class FeedAggregator {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -244,4 +290,4 @@ public class FeedAggregator {
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToConvertASyndicationFeedFromOneTypeToAnother.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToConvertASyndicationFeedFromOneTypeToAnother.html index 68e82dc..71f184f 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToConvertASyndicationFeedFromOneTypeToAnother.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToConvertASyndicationFeedFromOneTypeToAnother.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME to convert a syndication feed from one type to another @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,9 +168,8 @@
    -

    Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME to convert a syndication feed from one type to another

    -

    Software requirements: Synd J2SE 1.4+, JDOM 1.0 and ROME 0.5.

    -

    ROME represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with ROME are all lightweight classes.

    +

    Using ROME to convert a syndication feed from one type to another

    +

    ROME represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with ROME are all lightweight classes.

    ROME includes parsers to process syndication feeds into SyndFeed instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using ROME are the following 2 lines of code:

    @@ -141,15 +187,15 @@ output.output(feed,new PrintWriter(System.out));
     

    Following is the full code for a Java application that reads a syndication feed and converts it to other syndication feed type, writing the converted feed to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.io.InputStreamReader;
     import java.io.PrintWriter;
    -import com.sun.syndication.feed.synd.SyndFeed;
    -import com.sun.syndication.io.SyndFeedInput;
    -import com.sun.syndication.io.SyndFeedOutput;
    -import com.sun.syndication.io.XmlReader;
    +import com.rometools.rome.feed.synd.SyndFeed;
    +import com.rometools.rome.io.SyndFeedInput;
    +import com.rometools.rome.io.SyndFeedOutput;
    +import com.rometools.rome.io.XmlReader;
     
     /**
      * It Converts any RSS/Atom feed type to a an RSS/Atom feed of the
    @@ -202,7 +248,7 @@ public class FeedConverter {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -212,4 +258,4 @@ public class FeedConverter {
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToCreateAndWriteASyndicationFeed.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToCreateAndWriteASyndicationFeed.html index 43c5b79..c94b990 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToCreateAndWriteASyndicationFeed.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToCreateAndWriteASyndicationFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME to create and write a syndication feed @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,9 +168,8 @@
    -

    Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME to create and write a syndication feed

    -

    Software requirements: J2SE 1.4+, JDOM 1.0 and ROME 0.5.

    -

    ROME represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with ROME are all lightweight classes.

    +

    Using ROME to create and write a syndication feed

    +

    ROME represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with ROME are all lightweight classes.

    Creating a feed with SyndFeed beans consists of creating beans and setting their properties. The following code fragments show how a SyndFeed bean with 3 entries is created.

    First the SyndFeed instance is created, the preferred syndication format is set and the feed header info (title, link, description) is also set.

    @@ -182,10 +228,10 @@ output.output(feed,writer);

    Following is the full code for a Java application that creates a syndication feed and writes it to a file in the specified syndication format.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
    -import com.sun.syndication.feed.synd.*;
    -import com.sun.syndication.io.SyndFeedOutput;
    +import com.rometools.rome.feed.synd.*;
    +import com.rometools.rome.io.SyndFeedOutput;
     
     import java.io.FileWriter;
     import java.io.Writer;
    @@ -289,7 +335,7 @@ public class FeedWriter {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -299,4 +345,4 @@ public class FeedWriter {
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToReadASyndicationFeed.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToReadASyndicationFeed.html index 0a11c9d..ee860be 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToReadASyndicationFeed.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEToReadASyndicationFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME to read a syndication feed @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,9 +168,8 @@
    -

    Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME to read a syndication feed

    -

    Software requirements: J2SE 1.4+, JDOM 1.0 and ROME 0.5.

    -

    ROME represents syndication feeds (RSS and Atom) as instances of the com.sun.syndication.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with ROME are all lightweight classes.

    +

    Using ROME to read a syndication feed

    +

    ROME represents syndication feeds (RSS and Atom) as instances of the com.rometools.rome.synd.SyndFeed interface. The SyndFeed interfaces and its properties follow the Java Bean patterns. The default implementations provided with ROME are all lightweight classes.

    ROME includes parsers to process syndication feeds into SyndFeed instances. The SyndFeedInput class handles the parsers using the correct one based on the syndication feed being processed. The developer does not need to worry about selecting the right parser for a syndication feed, the SyndFeedInput will take care of it by peeking at the syndication feed structure. All it takes to read a syndication feed using ROME are the following 2 lines of code:

    @@ -139,13 +185,13 @@ SyndFeed feed = input.build(new XmlReader(feedUrl));
     

    Following is the full code for a Java application that reads a syndication feed and prints the SyndFeed bean to the application's output.

    -package com.sun.syndication.samples;
    +package com.rometools.rome.samples;
     
     import java.net.URL;
     import java.io.InputStreamReader;
    -import com.sun.syndication.feed.synd.SyndFeed;
    -import com.sun.syndication.io.SyndFeedInput;
    -import com.sun.syndication.io.XmlReader;
    +import com.rometools.rome.feed.synd.SyndFeed;
    +import com.rometools.rome.io.SyndFeedInput;
    +import com.rometools.rome.io.XmlReader;
     
     /**
      * It Reads and prints any RSS/Atom feed type.
    @@ -192,7 +238,7 @@ public class FeedReader {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -202,4 +248,4 @@ public class FeedReader {
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEWithinAServletToCreateAndReturnAFeed.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEWithinAServletToCreateAndReturnAFeed.html index 604ad27..6158920 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEWithinAServletToCreateAndReturnAFeed.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/RssAndAtOMUtilitiEsROMEV0.5TutorialUsingROMEWithinAServletToCreateAndReturnAFeed.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME within a Servlet to create and return a feed @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,8 +168,7 @@
    -

    Rss and atOM utilitiEs (ROME) v0.5 Tutorial, Using ROME within a Servlet to create and return a feed

    -

    Software requirements: J2SE 1.4+, Servlet Container 2.3+, JDOM 1.0 and ROME 0.5.

    +

    Using ROME within a Servlet to create and return a feed

    This sample consists of a servlet that serves a feed as response. The feed type (RSS in any of its variants or Atom) can be specified as a URL parameter when requesting the feed. The returned feed is hardwired in the sample and it would be straight forward to modify the sample to generate the feed dynamically (i.e. from data stored in a database).

    The core logic of the FeedServlet is in the following fragment of code:

    @@ -159,11 +205,11 @@ public class FeedServlet extends HttpServlet {

    Following is the full code for the servlet.

    -package com.sun.syndication.samples.servlet;
    +package com.rometools.rome.samples.servlet;
     
    -import com.sun.syndication.feed.synd.*;
    -import com.sun.syndication.io.FeedException;
    -import com.sun.syndication.io.SyndFeedOutput;
    +import com.rometools.rome.feed.synd.*;
    +import com.rometools.rome.io.FeedException;
    +import com.rometools.rome.io.SyndFeedOutput;
     
     import javax.servlet.http.HttpServlet;
     import javax.servlet.http.HttpServletRequest;
    @@ -310,7 +356,7 @@ public class FeedServlet extends HttpServlet {
     
         <servlet>
             <servlet-name>FeedServlet</servlet-name>
    -        <servlet-class>com.sun.syndication.samples.servlet.FeedServlet</servlet-class>
    +        <servlet-class>com.rometools.rome.samples.servlet.FeedServlet</servlet-class>
             <init-param>
                 <param-name>default.feed.type</param-name>
                 <param-value>rss_2.0</param-value>
    @@ -333,7 +379,7 @@ public class FeedServlet extends HttpServlet {
     
         
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -343,4 +389,4 @@ public class FeedServlet extends HttpServlet {
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/TheCopyFromInterface.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/TheCopyFromInterface.html index a04f436..3fa8730 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/TheCopyFromInterface.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/TheCopyFromInterface.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - The CopyFrom interface @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -92,8 +104,43 @@ ROME Development Proposals
  • + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -212,7 +259,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -222,4 +269,4 @@
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/UnderstandingRssAndAtOMUtilitiEsROMEBeanUtilities.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/UnderstandingRssAndAtOMUtilitiEsROMEBeanUtilities.html index b386248..ff3b5a8 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/UnderstandingRssAndAtOMUtilitiEsROMEBeanUtilities.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/UnderstandingRssAndAtOMUtilitiEsROMEBeanUtilities.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Understanding Rss and atOM utilitiEs (ROME) Bean Utilities @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,9 +168,9 @@
    -

    Understanding Rss and atOM utilitiEs (ROME) Bean Utilities

    +

    Understanding Bean Utilities

    ROME bean utilities are not part of ROME public API. They are used by the default implementation of ROME beans and it may be useful for alternate implementations as well. It is important to keep in mind that these APIs are not public and they are subject to change breaking backward compatibility.

    -

    Rome com.sun.syndication.feed.impl package contains a set of Java classes that provide support for all the basic features Java Beans commonly must have: toString, equals, hashcode and cloning.

    +

    Rome com.rometools.rome.feed.impl package contains a set of Java classes that provide support for all the basic features Java Beans commonly must have: toString, equals, hashcode and cloning.

    By using these classes Beans don't have to hand code these functions. This greatly simplifies things when Beans have several properties, collection properties and composite properties.

    The CloneableBean, EqualsBean, ToStringBean and ObjectBean classes use instrospection on the properties of the classes using them. This is done recursively on all properties. All ROME Beans default implementations leverage these classes.

    @@ -240,7 +287,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -250,4 +297,4 @@
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/XMLCharsetEncodingDetectionHowRssAndAtOMUtilitiEsROMEHelpsGettingTheRightCharsetEncoding.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/XMLCharsetEncodingDetectionHowRssAndAtOMUtilitiEsROMEHelpsGettingTheRightCharsetEncoding.html index 01b87f0..183be8f 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/XMLCharsetEncodingDetectionHowRssAndAtOMUtilitiEsROMEHelpsGettingTheRightCharsetEncoding.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/XMLCharsetEncodingDetectionHowRssAndAtOMUtilitiEsROMEHelpsGettingTheRightCharsetEncoding.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - XML Charset Encoding detection, how Rss and atOM utilitiEs (ROME) helps getting the right charset encoding @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -121,7 +168,7 @@
    -

    XML Charset Encoding detection, how Rss and atOM utilitiEs (ROME) helps getting the right charset encoding

    +

    XML Charset Encoding detection, how ROME helps getting the right charset encoding

    Determining the charset set encoding of an XML document it may prove not as easy as it seems, and when the XML document is served over HTTP things get a little more hairy.

    Current Java libraries or utilities don't do this by default, A JAXP SAX parser may detect the charset encoding of a XML document looking at the first bytes of the stream as defined Section 4.3.3 and Appendix F.1 of the in XML 1.0 (Third Edition) specification. But Appendix F.1 is non-normative and not all Java XML parsers do it right now. For example the JAXP SAX parser implementation in J2SE 1.4.2 does not handle Appendix F.1 and Xerces 2.6.2 just added support for it. But still this does not solve the whole problem. JAXP SAX parsers are not aware of the HTTP transport rules for charset encoding resolution as defined by RFC 3023. They are not because they operate on a byte stream or a char stream without any knowledge of the stream transport protocol, HTTP in this case.

    Mark Pilgrim did a very good job explaining how the charset encoding should be determined, Determining the character encoding of a feed and XML on the Web Has Failed.

    @@ -235,7 +282,7 @@ else
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -245,4 +292,4 @@ else
    - \ No newline at end of file + diff --git a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/index.html b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/index.html index 3b83729..6144119 100644 --- a/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/index.html +++ b/RssAndAtOMUtilitiEsROMEV0.5AndAboveTutorialsAndArticles/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Rss and atOM utilitiEs (ROME) v0.5 and above Tutorials and Articles @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -119,7 +166,7 @@
    -

    Rss and atOM utilitiEs (ROME) v0.5 and above Tutorials and Articles

    +

    Tutorials and Articles

    Tutorials

    The following tutorials show how to use the ROME API. They focus on the higher abstraction layer of classes offered by ROME, what we call the Synd* classes. By using the Synd* classes developers don't have to deal with the specifics of any syndication feed. They work with normalized feeds, the Synd* feeds. This makes it much easier to write applications that have to deal with all the variety of syndication feed types in use today.

    @@ -154,7 +201,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -164,4 +211,4 @@
    - \ No newline at end of file + diff --git a/SitesToMoveFromJava.net.html b/SitesToMoveFromJava.net.html index 5634665..4ab446c 100644 --- a/SitesToMoveFromJava.net.html +++ b/SitesToMoveFromJava.net.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - sites to move from java.net @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -366,7 +413,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -376,4 +423,4 @@
    - \ No newline at end of file + diff --git a/TutorialsAndArticles.html b/TutorialsAndArticles.html index 24e5e61..2c3eb14 100644 --- a/TutorialsAndArticles.html +++ b/TutorialsAndArticles.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Tutorials and Articles @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -186,7 +233,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -196,4 +243,4 @@
    - \ No newline at end of file + diff --git a/WhatPartOfTheAPIYouShouldBeUsing.html b/WhatPartOfTheAPIYouShouldBeUsing.html index 153ff3b..7581afb 100644 --- a/WhatPartOfTheAPIYouShouldBeUsing.html +++ b/WhatPartOfTheAPIYouShouldBeUsing.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - What part of the API you should be using @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -123,7 +170,7 @@

    What part of the API you should be using

    Rome API allows developers to work with classes that closely resemble a particular syndication feed type. For example, the Channel class for RSS feeds and the Feed class for Atom feeds. All the Synd* classes, which leverage the RSS and Atom specific classes, are the bridge to go from one syndication type to another.

    -

    For day to day coding, we found ourselves using the Synd* classes (in com.sun.syndication.feed.synd, com.sun.syndication.feed.module and com.sun.syndication.io packages) as we need to do applications that understand the different syndication feed types. And it is much simpler to work with a higher and independent abstraction.

    +

    For day to day coding, we found ourselves using the Synd* classes (in com.rometools.rome.feed.synd, com.rometools.rome.feed.module and com.rometools.rome.io packages) as we need to do applications that understand the different syndication feed types. And it is much simpler to work with a higher and independent abstraction.

    @@ -132,7 +179,7 @@ - \ No newline at end of file + diff --git a/WhatSWrongWithOtherExistingRSSParsingLibraries.html b/WhatSWrongWithOtherExistingRSSParsingLibraries.html index d6cd5df..ad238a1 100644 --- a/WhatSWrongWithOtherExistingRSSParsingLibraries.html +++ b/WhatSWrongWithOtherExistingRSSParsingLibraries.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - What's wrong with other existing RSS parsing libraries? @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -161,7 +208,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -171,4 +218,4 @@
    - \ No newline at end of file + diff --git a/WhyThisProject.html b/WhyThisProject.html index ea0d25b..d641371 100644 --- a/WhyThisProject.html +++ b/WhyThisProject.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Why this project? @@ -23,12 +23,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -92,8 +104,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -141,7 +188,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -151,4 +198,4 @@
    - \ No newline at end of file + diff --git a/css/print.css b/css/print.css index c21b4e2..1cd02d9 100644 --- a/css/print.css +++ b/css/print.css @@ -20,4 +20,4 @@ /* $Id: print.css 1201871 2011-11-14 20:18:24Z simonetripodi $ */ #banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {display: none !important;} -#bodyColumn, body.docs div.docs {margin: 0 !important;border: none !important} \ No newline at end of file +#bodyColumn, body.docs div.docs {margin: 0 !important;border: none !important} diff --git a/css/site.css b/css/site.css index 43c3cd8..1a630a2 100644 --- a/css/site.css +++ b/css/site.css @@ -1,3 +1,18 @@ +/* + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ h1 { padding: 4px 4px 4px 6px; border: 1px solid #999; @@ -5,4 +20,12 @@ h1 { background-color: #ddd; font-weight:900; font-size: x-large; -} \ No newline at end of file +} + +#banner { + margin-bottom: 10px; +} + +.breadcrumb { + overflow: auto; +} diff --git a/dependencies.html b/dependencies.html index 6aa5f05..b622c24 100644 --- a/dependencies.html +++ b/dependencies.html @@ -1,13 +1,13 @@ - + ROME - Project Dependencies @@ -21,12 +21,24 @@ + + + + +
    + Fork me on GitHub + + + +
  • Last Published: 2014-04-18
  • |
  • -
  • Version: 1.5.0-SNAPSHOT
  • +
  • Last Published: 2016-04-24
  • |
  • +
  • Version: 1.7.0-SNAPSHOT
  • @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -99,25 +146,16 @@ Project Information
  • @@ -228,23 +261,23 @@ ArtifactId Version Type -License +Licenses com.rometools -rome-utils -1.5.0-20140417.213038-2 +rome-utils +1.7.0-SNAPSHOT jar The Apache Software License, Version 2.0 org.jdom -jdom -2.0.2 +jdom2 +2.0.6 jar Similar to Apache License but with the acknowledgment clause removed org.slf4j slf4j-api -1.7.7 +1.7.16 jar MIT License
    @@ -256,19 +289,19 @@ ArtifactId Version Type -License +Licenses ch.qos.logback -logback-classic -1.1.2 +logback-classic +1.1.3 jar Eclipse Public License - v 1.0-GNU Lesser General Public License junit junit -4.11 +4.12 jar -Common Public License Version 1.0
    +Eclipse Public License 1.0

    Project Transitive Dependencies

    The following is a list of transitive dependencies for this project. Transitive dependencies are the dependencies of the project dependencies.

    @@ -281,11 +314,11 @@ ArtifactId Version Type -License +Licenses ch.qos.logback -logback-core -1.1.2 +logback-core +1.1.3 jar Eclipse Public License - v 1.0-GNU Lesser General Public License @@ -295,8 +328,9 @@ jar New BSD License
    -

    Project Dependency Graph

    @@ -316,7 +352,7 @@

    Dependency Tree

    -
  • junit:junit:jar:4.11 (test) Information
  • +
  • junit:junit:jar:4.12 (test) [Information] +

    Project Licenses: Eclipse Public License 1.0

  • +

    Project Licenses: New BSD License

    Licenses

    -

    New BSD License: Hamcrest Core

    -

    Eclipse Public License - v 1.0: Logback Classic Module, Logback Core Module

    -

    Common Public License Version 1.0: JUnit

    -

    GNU Lesser General Public License: Logback Classic Module, Logback Core Module

    +

    Similar to Apache License but with the acknowledgment clause removed: JDOM

    +

    Eclipse Public License 1.0: JUnit

    MIT License: SLF4J API Module

    +

    GNU Lesser General Public License: Logback Classic Module, Logback Core Module

    +

    New BSD License: Hamcrest Core

    The Apache Software License, Version 2.0: rome, rome-utils

    -

    Similar to Apache License but with the acknowledgment clause removed: JDOM

    +

    Eclipse Public License - v 1.0: Logback Classic Module, Logback Core Module

    Dependency File Details

    @@ -418,94 +453,94 @@ - - + + - - - + + + - - + + - - - - - - - + + + + + + + - - - - + + + + - + - - - - - + + + + + - + - + - + - - - - + + + + - + - - - - - + + + + + - + - - + + - - - - + + + + - - - - + + + + - - - - + + + +
    Entries Classes PackagesJDK RevDebug
    Java VersionDebug Information
    logback-classic-1.1.2.jar264.40 kB211logback-classic-1.1.3.jar280.9 kB221 173 251.5debug
    1.6Yes
    logback-core-1.1.2.jar417.70 kB399355341.5debug
    logback-core-1.1.3.jar455 kB410365351.6Yes
    rome-utils-1.5.0-SNAPSHOT.jar4.85 kB154rome-utils-1.7.0-SNAPSHOT.jar7.3 kB188 1 1.6debug
    Yes
    junit-4.11.jar239.30 kB26623328junit-4.12.jar314.9 kB32328630 1.5debug
    Yes
    hamcrest-core-1.3.jar43.97 kB45 kB 52 45 3 1.5debug
    Yes
    jdom-2.0.2.jar288.43 kB208188jdom2-2.0.6.jar304.9 kB215195 15 1.5debug
    Yes
    slf4j-api-1.7.7.jar28.57 kB35243slf4j-api-1.7.16.jar40.5 kB46344 1.5debug
    Yes
    Total Size Entries Classes PackagesJDK RevDebug
    Java VersionDebug Information
    71.26 MB1,1861,0221091.4 MB12851106113 1.6 7
    compile: 3compile: 321.86 kBcompile: 258compile: 216compile: 19compile: 352.8 kBcompile: 279compile: 237compile: 20 - compile: 3
    test: 4test: 965.37 kBtest: 928test: 806test: 90test: 1.1 MBtest: 1006test: 869test: 93 - test: 4
    @@ -517,86 +552,41 @@ Release Snapshot -sonatype-nexus-snapshots -https://oss.sonatype.org/content/repositories/snapshots -- -Yes - -android-extras -file:///opt/adt-bundle-linux-x86_64-20130729/sdk/extras/android/m2repository/ -Yes -Yes - -subshell -http://maven-extern.subshell.com/repo-maven2 -Yes -Yes - central -http://repo.maven.apache.org/maven2 +https://repo.maven.apache.org/maven2 Yes -- +No

    Repository locations for each of the Dependencies.

    - - - - - - - - + + - - - - - + + - - - - + - - - - - + + - - - - + - - - - - + + - - - - - + + - - - - - -
    Artifactsonatype-nexus-snapshotsandroid-extrassubshell central
    ch.qos.logback:logback-classic:jar:1.1.2---Found at http://repo.maven.apache.org/maven2
    ch.qos.logback:logback-classic:jar:1.1.3Found at https://repo.maven.apache.org/maven2
    ch.qos.logback:logback-core:jar:1.1.2---Found at http://repo.maven.apache.org/maven2
    ch.qos.logback:logback-core:jar:1.1.3Found at https://repo.maven.apache.org/maven2
    com.rometools:rome-utils:jar:1.5.0-SNAPSHOTFound at https://oss.sonatype.org/content/repositories/snapshots--com.rometools:rome-utils:jar:1.7.0-SNAPSHOT -
    junit:junit:jar:4.11---Found at http://repo.maven.apache.org/maven2
    junit:junit:jar:4.12Found at https://repo.maven.apache.org/maven2
    org.hamcrest:hamcrest-core:jar:1.3---Found at http://repo.maven.apache.org/maven2
    Found at https://repo.maven.apache.org/maven2
    org.jdom:jdom:jar:2.0.2---Found at http://repo.maven.apache.org/maven2
    org.jdom:jdom2:jar:2.0.6Found at https://repo.maven.apache.org/maven2
    org.slf4j:slf4j-api:jar:1.7.7---Found at http://repo.maven.apache.org/maven2
    org.slf4j:slf4j-api:jar:1.7.16Found at https://repo.maven.apache.org/maven2
    Totalsonatype-nexus-snapshotsandroid-extrassubshell central
    7 (compile: 3, test: 4)100 6
    @@ -606,7 +596,7 @@ - \ No newline at end of file + diff --git a/dependency-convergence.html b/dependency-convergence.html new file mode 100644 index 0000000..677f40f --- /dev/null +++ b/dependency-convergence.html @@ -0,0 +1,389 @@ + + + + + + + + + ROME - Reactor Dependency Convergence + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Reactor Dependency Convergence

    + + + +
    + Legend: +
    [Error]At least one dependency has a differing version of the dependency or has SNAPSHOT dependencies.

    + + + + + + + + + + + + + + + + + + + + + +
    + Statistics: +
    Number of modules:10
    Number of dependencies (NOD):57
    Number of unique artifacts (NOA):62
    Number of version-conflicting artifacts (NOC):5
    Number of SNAPSHOT artifacts (NOS):0
    Convergence (NOD/NOA):[Error] 91 %
    Ready for release (100% convergence and no SNAPSHOTS):[Error] Error
    You do not have 100% convergence.
    +
    +

    Dependencies used in modules

    +
    +

    commons-logging:commons-logging

    + + + +
    [Error] + + + + + + +
    1.0.4 +
      +
    1. com.rometools:rome-propono:jar:1.7.0-SNAPSHOT
      \- commons-httpclient:commons-httpclient:jar:3.1:compile
         \- commons-logging:commons-logging:jar:1.0.4:compile

    1.1.1 +
      +
    1. com.rometools:rome-propono:jar:1.7.0-SNAPSHOT
      \- commons-beanutils:commons-beanutils:jar:1.9.2:compile
         \- (commons-logging:commons-logging:jar:1.1.1:compile - omitted for conflict with 1.0.4)

    +
    +

    org.ops4j.base:ops4j-base-lang

    + + + +
    [Error] + + + + + + +
    1.4.0 +
      +
    1. com.rometools:rome-osgi-test:jar:1.7.0-SNAPSHOT
      +- org.ops4j.pax.exam:pax-exam-container-native:jar:4.8.0:test
      |  +- org.ops4j.pax.url:pax-url-link:jar:2.4.2:test
      |  |  \- (org.ops4j.base:ops4j-base-lang:jar:1.4.0:test - omitted for conflict with 1.5.0)
      |  \- org.ops4j.pax.url:pax-url-classpath:jar:2.4.2:test
      |     \- (org.ops4j.base:ops4j-base-lang:jar:1.4.0:test - omitted for conflict with 1.5.0)
      \- org.ops4j.pax.url:pax-url-wrap:jar:2.4.5:test
         \- org.ops4j.pax.url:pax-url-commons:jar:2.4.5:test
            \- (org.ops4j.base:ops4j-base-lang:jar:1.4.0:test - omitted for conflict with 1.5.0)

    1.5.0 +
      +
    1. com.rometools:rome-osgi-test:jar:1.7.0-SNAPSHOT
      +- org.ops4j.pax.exam:pax-exam-container-native:jar:4.8.0:test
      |  +- org.ops4j.pax.exam:pax-exam:jar:4.8.0:test
      |  |  +- (org.ops4j.base:ops4j-base-lang:jar:1.5.0:test - omitted for duplicate)
      |  |  \- org.ops4j.base:ops4j-base-store:jar:1.5.0:test
      |  |     \- org.ops4j.base:ops4j-base-io:jar:1.5.0:test
      |  |        \- (org.ops4j.base:ops4j-base-lang:jar:1.5.0:test - omitted for duplicate)
      |  +- org.ops4j.pax.swissbox:pax-swissbox-core:jar:1.8.2:test
      |  |  \- (org.ops4j.base:ops4j-base-lang:jar:1.5.0:test - omitted for duplicate)
      |  +- org.ops4j.pax.swissbox:pax-swissbox-tracker:jar:1.8.2:test
      |  |  \- (org.ops4j.base:ops4j-base-lang:jar:1.5.0:test - omitted for duplicate)
      |  +- org.ops4j.base:ops4j-base-lang:jar:1.5.0:test
      |  \- org.ops4j.base:ops4j-base-net:jar:1.5.0:test
      |     \- (org.ops4j.base:ops4j-base-lang:jar:1.5.0:test - omitted for duplicate)
      +- org.ops4j.pax.exam:pax-exam-junit4:jar:4.8.0:test
      |  \- (org.ops4j.base:ops4j-base-lang:jar:1.5.0:test - omitted for duplicate)
      \- org.ops4j.pax.url:pax-url-wrap:jar:2.4.5:test
         +- org.ops4j.pax.swissbox:pax-swissbox-bnd:jar:1.8.2:test
         |  \- (org.ops4j.base:ops4j-base-lang:jar:1.5.0:test - omitted for duplicate)
         \- org.ops4j.pax.url:pax-url-commons:jar:2.4.5:test
            \- org.ops4j.pax.swissbox:pax-swissbox-property:jar:1.8.2:test
               \- (org.ops4j.base:ops4j-base-lang:jar:1.5.0:test - omitted for duplicate)

    +
    +

    org.ops4j.base:ops4j-base-net

    + + + +
    [Error] + + + + + + +
    1.4.0 +
      +
    1. com.rometools:rome-osgi-test:jar:1.7.0-SNAPSHOT
      \- org.ops4j.pax.url:pax-url-wrap:jar:2.4.5:test
         \- (org.ops4j.base:ops4j-base-net:jar:1.4.0:test - omitted for conflict with 1.5.0)

    1.5.0 +
      +
    1. com.rometools:rome-osgi-test:jar:1.7.0-SNAPSHOT
      \- org.ops4j.pax.exam:pax-exam-container-native:jar:4.8.0:test
         \- org.ops4j.base:ops4j-base-net:jar:1.5.0:test

    +
    +

    org.ops4j.base:ops4j-base-util-property

    + + + +
    [Error] + + + + + + +
    1.4.0 +
      +
    1. com.rometools:rome-osgi-test:jar:1.7.0-SNAPSHOT
      \- org.ops4j.pax.exam:pax-exam-container-native:jar:4.8.0:test
         +- org.ops4j.pax.url:pax-url-link:jar:2.4.2:test
         |  \- (org.ops4j.base:ops4j-base-util-property:jar:1.4.0:test - omitted for conflict with 1.5.0)
         \- org.ops4j.pax.url:pax-url-classpath:jar:2.4.2:test
            \- (org.ops4j.base:ops4j-base-util-property:jar:1.4.0:test - omitted for conflict with 1.5.0)

    1.5.0 +
      +
    1. com.rometools:rome-osgi-test:jar:1.7.0-SNAPSHOT
      +- org.ops4j.pax.exam:pax-exam-container-native:jar:4.8.0:test
      |  \- org.ops4j.pax.exam:pax-exam:jar:4.8.0:test
      |     \- org.ops4j.base:ops4j-base-util-property:jar:1.5.0:test
      \- org.ops4j.pax.url:pax-url-wrap:jar:2.4.5:test
         \- org.ops4j.pax.url:pax-url-commons:jar:2.4.5:test
            \- org.ops4j.pax.swissbox:pax-swissbox-property:jar:1.8.2:test
               \- (org.ops4j.base:ops4j-base-util-property:jar:1.5.0:test - omitted for duplicate)

    +
    +

    org.ops4j.pax.url:pax-url-commons

    + + + +
    [Error] + + + + + + +
    2.4.2 +
      +
    1. com.rometools:rome-osgi-test:jar:1.7.0-SNAPSHOT
      \- org.ops4j.pax.exam:pax-exam-container-native:jar:4.8.0:test
         +- org.ops4j.pax.url:pax-url-link:jar:2.4.2:test
         |  \- (org.ops4j.pax.url:pax-url-commons:jar:2.4.2:test - omitted for conflict with 2.4.5)
         \- org.ops4j.pax.url:pax-url-classpath:jar:2.4.2:test
            \- (org.ops4j.pax.url:pax-url-commons:jar:2.4.2:test - omitted for duplicate)

    2.4.5 +
      +
    1. com.rometools:rome-osgi-test:jar:1.7.0-SNAPSHOT
      \- org.ops4j.pax.url:pax-url-wrap:jar:2.4.5:test
         \- org.ops4j.pax.url:pax-url-commons:jar:2.4.5:test

    +
    +
    +
    + +
    + + + + diff --git a/dependency-info.html b/dependency-info.html index 6949a9d..d081bac 100644 --- a/dependency-info.html +++ b/dependency-info.html @@ -1,13 +1,13 @@ - + ROME - Dependency Information @@ -21,12 +21,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -99,6 +146,39 @@ Project Information
  • @@ -224,36 +257,36 @@
    <dependency>
       <groupId>com.rometools</groupId>
       <artifactId>rome</artifactId>
    -  <version>1.5.0-SNAPSHOT</version>
    +  <version>1.7.0-SNAPSHOT</version>
     </dependency>

    Apache Buildr

    -
    'com.rometools:rome:jar:1.5.0-SNAPSHOT'
    +
    'com.rometools:rome:jar:1.7.0-SNAPSHOT'
    -

    Apache Ant

    +

    Apache Ivy

    -
    <dependency org="com.rometools" name="rome" rev="1.5.0-SNAPSHOT">
    +
    <dependency org="com.rometools" name="rome" rev="1.7.0-SNAPSHOT">
       <artifact name="rome" type="jar" />
     </dependency>

    Groovy Grape

    @Grapes(
    -@Grab(group='com.rometools', module='rome', version='1.5.0-SNAPSHOT')
    +@Grab(group='com.rometools', module='rome', version='1.7.0-SNAPSHOT')
     )
    -

    Grails

    +

    Gradle/Grails

    -
    compile 'com.rometools:rome:1.5.0-SNAPSHOT'
    +
    compile 'com.rometools:rome:1.7.0-SNAPSHOT'
    +
    +

    Scala SBT

    +
    +
    libraryDependencies += "com.rometools" % "rome" % "1.7.0-SNAPSHOT"

    Leiningen

    -
    [com.rometools/rome "1.5.0-SNAPSHOT"]
    -
    -

    SBT

    -
    -
    libraryDependencies += "com.rometools" %% "rome" % "1.5.0-SNAPSHOT"
    +
    [com.rometools/rome "1.7.0-SNAPSHOT"]
    @@ -262,7 +295,7 @@ - \ No newline at end of file + diff --git a/dependency-management.html b/dependency-management.html index 8386a1a..254d07d 100644 --- a/dependency-management.html +++ b/dependency-management.html @@ -1,13 +1,13 @@ - + ROME - Project Dependency Management @@ -21,12 +21,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -99,6 +146,39 @@ Project Information
  • @@ -230,8 +263,8 @@ License ch.qos.logback -logback-classic -1.1.2 +logback-classic +1.1.3 jar Eclipse Public License - v 1.0, GNU Lesser General Public License @@ -242,32 +275,56 @@ The Apache Software License, Version 2.0 com.rometools -rome -1.5.0-SNAPSHOT +rome +1.7.0-SNAPSHOT jar The Apache Software License, Version 2.0 com.rometools -rome-certiorem -1.5.0-SNAPSHOT +rome-certiorem +1.7.0-SNAPSHOT jar The Apache Software License, Version 2.0 com.rometools -rome-fetcher -1.5.0-SNAPSHOT +rome-certiorem-webapp +1.7.0-SNAPSHOT jar The Apache Software License, Version 2.0 com.rometools -rome-utils -1.5.0-SNAPSHOT +rome-fetcher +1.7.0-SNAPSHOT +jar +The Apache Software License, Version 2.0 + +com.rometools +rome-modules +1.7.0-SNAPSHOT +jar +The Apache Software License, Version 2.0 + +com.rometools +rome-opml +1.7.0-SNAPSHOT +jar +The Apache Software License, Version 2.0 + +com.rometools +rome-propono +1.7.0-SNAPSHOT +jar +The Apache Software License, Version 2.0 + +com.rometools +rome-utils +1.7.0-SNAPSHOT jar The Apache Software License, Version 2.0 commons-beanutils commons-beanutils -1.9.1 +1.9.2 jar The Apache Software License, Version 2.0 @@ -303,9 +360,9 @@ junit junit -4.11 +4.12 jar -Common Public License Version 1.0 +Eclipse Public License 1.0 net.oauth.core oauth @@ -315,33 +372,39 @@ org.apache.commons commons-lang3 -3.3.1 +3.4 +jar +Apache License, Version 2.0 + +org.apache.xmlrpc +xmlrpc-client +3.1.3 jar The Apache Software License, Version 2.0 - + org.hamcrest -hamcrest-all +hamcrest-library 1.3 jar New BSD License - + org.jdom -jdom -2.0.2 +jdom2 +2.0.6 jar Similar to Apache License but with the acknowledgment clause removed - + org.slf4j slf4j-api -1.7.7 +1.7.16 jar MIT License - -xmlrpc -xmlrpc-client -3.0 + +xmlunit +xmlunit +1.6 jar -The Apache Software License, Version 2.0
    +BSD License @@ -350,7 +413,7 @@ - \ No newline at end of file + diff --git a/distribution-management.html b/distribution-management.html index 31f1537..695b8b1 100644 --- a/distribution-management.html +++ b/distribution-management.html @@ -1,13 +1,13 @@ - + ROME - Project Distribution Management @@ -21,12 +21,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -101,23 +148,18 @@
  • - + - About + Dependencies
  • - + - Plugin Management + Dependency Convergence
  • -
  • - - Distribution Management -
  • -
  • @@ -125,48 +167,6 @@ Dependency Information
  • -
  • - - - - Source Repository -
  • - -
  • - - - - Mailing Lists -
  • - -
  • - - - - Issue Tracking -
  • - -
  • - - - - Continuous Integration -
  • - -
  • - - - - Project Plugins -
  • - -
  • - - - - Project License -
  • -
  • @@ -174,25 +174,58 @@ Dependency Management
  • +
  • + + Distribution Management +
  • +
  • - + - Project Team + About
  • - + - Project Summary + Licenses
  • - + - Dependencies + Plugin Management +
  • + +
  • + + + + Plugins +
  • + +
  • + + + + Team +
  • + +
  • + + + + Source Code Management +
  • + +
  • + + + + Summary
  • @@ -220,9 +253,9 @@

    Overview

    The following is the distribution management information used by this project.

    -

    Repository - sonatype-nexus-staging

    https://oss.sonatype.org/service/local/staging/deploy/maven2/
    +

    Repository - ossrh

    https://oss.sonatype.org/service/local/staging/deploy/maven2/
    -

    Snapshot Repository - sonatype-nexus-snapshots

    https://oss.sonatype.org/content/repositories/snapshots/
    +

    Snapshot Repository - ossrh

    https://oss.sonatype.org/content/repositories/snapshots @@ -231,7 +264,7 @@ - \ No newline at end of file + diff --git a/index.html b/index.html index b5653dd..00ed5b1 100644 --- a/index.html +++ b/index.html @@ -1,6 +1,6 @@ @@ -9,7 +9,7 @@ - + ROME - Home @@ -23,12 +23,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -99,23 +146,18 @@ Project Information
  • @@ -218,39 +251,26 @@

    Welcome to ROME

    -

    "...ending syndication feed confusion by supporting all of 'em. " *

    -

    ROME is a set of RSS and Atom Utilities for Java that is open source under the Apache 2.0 license.

    -

    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

    +

    ROME is a Java framework for RSS and Atom feeds. It's open source and licensed under the Apache 2.0 license.

    ROME includes a set of parsers and generators for the various flavors of syndication feeds, as well as converters to convert from one format to another. The parsers can give you back Java objects that are either specific for the format you want to work with, or a generic normalized SyndFeed class that lets you work on with the data without bothering about the incoming or outgoing feed type.

    -

    If you use ROME for your site or software, please add it to the wiki page PoweredByRome, or drop us an email

    -

    Some of the links in the Navigation are out of date. This is because no one can edit them at present. However any registered user can edit the content of the pages and you'll find most of the links updated there, notably the Tutorials and Articles.

    ROME Subprojects

    - - + - - - + + - - - + + - - - + + - - - - - - -
    SubprojectPurposeLatest Release
    Purpose
    ROME FetcherA caching feed fetcher that supports retrieval of feeds via HTTP conditional GET. Supports ETags, GZip compression, and RFC3229 Delta encoding.ROME Fetcher v1.0 (Mar 11 2009)
    ModulesProvide support for feed extensions such as GeoRSS, iTunes, Microsoft SSE and SLE, Google GData and others.
    Rome ModulesProvide support for feed extensions such as GeoRSS, iTunes, Microsoft SSE and SLE, Google GData and others.ROME Modules 1.0 (Feb 24 2011)
    Fetcher (deprecated)A caching feed fetcher that supports retrieval of feeds via HTTP conditional GET. Supports ETags, GZip compression, and RFC3229 Delta encoding.
    ROME ProponoSupports publishing protocols, specifically the Atom Publishing Protocol and the legacy MetaWeblog API. Propono includes an Atom client library, an Atom server framework and a Blog client that supports both Atom protocol and the MetaWeblog API.ROME Propono v0.6.
    ProponoSupports publishing protocols, specifically the Atom Publishing Protocol and the legacy MetaWeblog API. Propono includes an Atom client library, an Atom server framework and a Blog client that supports both Atom protocol and the MetaWeblog API.
    ROME ManoA servlet pipeline framework for RSS and Atom feeds.
    OPML for ROMEOutline Processor Markup Language (OPML) parser and tools.
    +OPML +Outline Processor Markup Language (OPML) parser and tools.

    Further information

    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -101,23 +148,16 @@
  • - + - About + Dependencies
  • - + - Plugin Management -
  • - -
  • - - - - Distribution Management + Dependency Convergence
  • @@ -127,46 +167,6 @@ Dependency Information
  • -
  • - - - - Source Repository -
  • - -
  • - - - - Mailing Lists -
  • - -
  • - - - - Issue Tracking -
  • - -
  • - - - - Continuous Integration -
  • - -
  • - - - - Project Plugins -
  • - -
  • - - Project License -
  • -
  • @@ -176,23 +176,56 @@
  • - + - Project Team + Distribution Management
  • - + - Project Summary + About +
  • + +
  • + + Licenses +
  • + +
  • + + + + Plugin Management
  • - + - Dependencies + Plugins +
  • + +
  • + + + + Team +
  • + +
  • + + + + Source Code Management +
  • + +
  • + + + + Summary
  • @@ -215,11 +248,12 @@
    -
    + +

    Overview

    Typically the licenses listed for the project are that of the project itself, and not of dependencies.

    -

    Project License

    +

    Project Licenses

    The Apache Software License, Version 2.0

    @@ -434,7 +468,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -444,4 +478,4 @@
    - \ No newline at end of file + diff --git a/mail-lists.html b/mail-lists.html deleted file mode 100644 index 28955eb..0000000 --- a/mail-lists.html +++ /dev/null @@ -1,240 +0,0 @@ - - - - - - - - - ROME - Project Mailing Lists - - - - - - - - - - - - - -
    - - - - - -
    - - - -
    - -
    -

    Project Mailing Lists

    -

    There are no mailing lists currently associated with this project.

    -
    -
    -
    - -
    - -
    -
    -
    Copyright © 2014. - All Rights Reserved. - -
    - - - -
    -
    - - \ No newline at end of file diff --git a/plugin-management.html b/plugin-management.html index 8e2d694..3b387fc 100644 --- a/plugin-management.html +++ b/plugin-management.html @@ -1,13 +1,13 @@ - + ROME - Project Plugin Management @@ -21,12 +21,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -101,21 +148,16 @@
  • - + - About + Dependencies
  • -
  • - - Plugin Management -
  • -
  • - + - Distribution Management + Dependency Convergence
  • @@ -125,48 +167,6 @@ Dependency Information
  • -
  • - - - - Source Repository -
  • - -
  • - - - - Mailing Lists -
  • - -
  • - - - - Issue Tracking -
  • - -
  • - - - - Continuous Integration -
  • - -
  • - - - - Project Plugins -
  • - -
  • - - - - Project License -
  • -
  • @@ -176,23 +176,56 @@
  • - + - Project Team + Distribution Management
  • - + - Project Summary + About
  • - + - Dependencies + Licenses +
  • + +
  • + + Plugin Management +
  • + +
  • + + + + Plugins +
  • + +
  • + + + + Team +
  • + +
  • + + + + Source Code Management +
  • + +
  • + + + + Summary
  • @@ -224,37 +257,53 @@ ArtifactId Version +org.apache.felix +maven-bundle-plugin +3.0.1 + org.apache.maven.plugins maven-antrun-plugin 1.3 - + org.apache.maven.plugins maven-assembly-plugin 2.2-beta-5 - -org.apache.maven.plugins -maven-compiler-plugin -3.1 org.apache.maven.plugins -maven-dependency-plugin -2.1 +maven-compiler-plugin +3.5.1 org.apache.maven.plugins -maven-release-plugin -2.1 +maven-dependency-plugin +2.10 + +org.apache.maven.plugins +maven-deploy-plugin +2.8.2 + +org.apache.maven.plugins +maven-failsafe-plugin +2.19.1 + +org.apache.maven.plugins +maven-jar-plugin +2.6 + +org.apache.maven.plugins +maven-release-plugin +2.5.3 org.apache.maven.plugins maven-scm-publish-plugin -1.0 +1.1 -org.apache.maven.plugins -maven-site-plugin -3.3 - org.eclipse.m2e lifecycle-mapping -1.0.0
    +1.0.0 + +org.sonatype.plugins +nexus-staging-maven-plugin +1.6.6
    @@ -263,7 +312,7 @@
    -
    Copyright © 2014. +
    Copyright © 2016. All Rights Reserved.
    @@ -273,4 +322,4 @@
    - \ No newline at end of file + diff --git a/plugins.html b/plugins.html index faadd57..22aef1b 100644 --- a/plugins.html +++ b/plugins.html @@ -1,15 +1,15 @@ - + - ROME - Project Build Plugins + ROME - Project Plugins @@ -21,12 +21,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -101,23 +148,16 @@
  • - + - About + Dependencies
  • - + - Plugin Management -
  • - -
  • - - - - Distribution Management + Dependency Convergence
  • @@ -127,46 +167,6 @@ Dependency Information
  • -
  • - - - - Source Repository -
  • - -
  • - - - - Mailing Lists -
  • - -
  • - - - - Issue Tracking -
  • - -
  • - - - - Continuous Integration -
  • - -
  • - - Project Plugins -
  • - -
  • - - - - Project License -
  • -
  • @@ -176,23 +176,56 @@
  • - + - Project Team + Distribution Management
  • - + - Project Summary + About
  • - + - Dependencies + Licenses +
  • + +
  • + + + + Plugin Management +
  • + +
  • + + Plugins +
  • + +
  • + + + + Team +
  • + +
  • + + + + Source Code Management +
  • + +
  • + + + + Summary
  • @@ -224,56 +257,44 @@ ArtifactId Version +org.apache.felix +maven-bundle-plugin +3.0.1 + org.apache.maven.plugins maven-clean-plugin -2.4.1 - -org.apache.maven.plugins -maven-compiler-plugin -3.1 +2.5 org.apache.maven.plugins -maven-deploy-plugin -2.7 +maven-compiler-plugin +3.5.1 org.apache.maven.plugins -maven-enforcer-plugin -1.2 +maven-deploy-plugin +2.8.2 org.apache.maven.plugins maven-install-plugin -2.3.1 +2.4 org.apache.maven.plugins maven-jar-plugin -2.3.2 +2.6 org.apache.maven.plugins maven-resources-plugin -2.5 +2.6 org.apache.maven.plugins -maven-scm-publish-plugin -1.0 - -org.apache.maven.plugins maven-site-plugin 3.3 - -org.apache.maven.plugins -maven-surefire-plugin -2.10
    -
    -

    Project Report Plugins

    - - - - - - -
    GroupIdArtifactIdVersion
    org.apache.maven.pluginsmaven-project-info-reports-plugin2.7
    +maven-surefire-plugin +2.12.4
    +
    +

    Project Report Plugins

    +

    There are no plugins reports defined in the Reporting part of this project.

    @@ -282,7 +303,7 @@ - \ No newline at end of file + diff --git a/project-info.html b/project-info.html index 599dfb9..be101dc 100644 --- a/project-info.html +++ b/project-info.html @@ -1,13 +1,13 @@ - + ROME - Project Information @@ -21,12 +21,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • Project Information @@ -99,23 +146,16 @@
  • - + - About + Dependencies
  • - + - Plugin Management -
  • - -
  • - - - - Distribution Management + Dependency Convergence
  • @@ -125,48 +165,6 @@ Dependency Information
  • -
  • - - - - Source Repository -
  • - -
  • - - - - Mailing Lists -
  • - -
  • - - - - Issue Tracking -
  • - -
  • - - - - Continuous Integration -
  • - -
  • - - - - Project Plugins -
  • - -
  • - - - - Project License -
  • -
  • @@ -176,23 +174,58 @@
  • - + - Project Team + Distribution Management
  • - + - Project Summary + About
  • - + - Dependencies + Licenses +
  • + +
  • + + + + Plugin Management +
  • + +
  • + + + + Plugins +
  • + +
  • + + + + Team +
  • + +
  • + + + + Source Code Management +
  • + +
  • + + + + Summary
  • @@ -226,6 +259,21 @@ Document Description +Dependencies +This document lists the project's dependencies and provides information on each dependency. + +Dependency Convergence +This document presents the convergence of dependency versions across the entire project, and its sub modules. + +Dependency Information +This document describes how to to include this project as a dependency using various dependency management tools. + +Dependency Management +This document lists the dependencies that are defined through dependencyManagement. + +Distribution Management +This document provides informations on the distribution management of this project. + About All Roads Lead to ROME. ROME is a set of Atom/RSS Java utilities that make it easy to work in Java with most syndication formats. Today it accepts all flavors of RSS @@ -235,45 +283,24 @@ are either specific for the format you want to work with, or a generic normalized SyndFeed object that lets you work on with the data without bothering about the underlying format. + +Licenses +This document lists the project license(s). Plugin Management This document lists the plugins that are defined through pluginManagement. -Distribution Management -This document provides informations on the distribution management of this project. - -Dependency Information -This document describes how to to include this project as a dependency using various dependency management tools. - -Source Repository -This is a link to the online source repository that can be viewed via a web browser. - -Mailing Lists -This document provides subscription and archive information for this project's mailing lists. - -Issue Tracking -This is a link to the issue management system for this project. Issues (bugs, features, change requests) can be created and queried using this link. - -Continuous Integration -This is a link to the definitions of all continuous integration processes that builds and tests code on a frequent, regular basis. - -Project Plugins +Plugins This document lists the build plugins and the report plugins used by this project. -Project License -This is a link to the definitions of project licenses. - -Dependency Management -This document lists the dependencies that are defined through dependencyManagement. - -Project Team +Team This document provides information on the members of this project. These are the individuals who have contributed to the project in one form or another. -Project Summary -This document lists other related information of this project +Source Code Management +This document lists ways to access the online source repository. -Dependencies -This document lists the project's dependencies and provides information on each dependency.
    +Summary +This document lists other related information of this project @@ -282,7 +309,7 @@ - \ No newline at end of file + diff --git a/project-summary.html b/project-summary.html index ef93f91..561cdf4 100644 --- a/project-summary.html +++ b/project-summary.html @@ -1,13 +1,13 @@ - + ROME - Project Summary @@ -21,12 +21,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -101,23 +148,16 @@
  • - + - About + Dependencies
  • - + - Plugin Management -
  • - -
  • - - - - Distribution Management + Dependency Convergence
  • @@ -127,48 +167,6 @@ Dependency Information
  • -
  • - - - - Source Repository -
  • - -
  • - - - - Mailing Lists -
  • - -
  • - - - - Issue Tracking -
  • - -
  • - - - - Continuous Integration -
  • - -
  • - - - - Project Plugins -
  • - -
  • - - - - Project License -
  • -
  • @@ -178,22 +176,57 @@
  • - + - Project Team + Distribution Management +
  • + +
  • + + + + About +
  • + +
  • + + + + Licenses +
  • + +
  • + + + + Plugin Management +
  • + +
  • + + + + Plugins +
  • + +
  • + + + + Team +
  • + +
  • + + + + Source Code Management
  • - Project Summary + Summary
  • - -
  • - - - - Dependencies -
  • @@ -239,7 +272,7 @@ underlying format. Homepage -http://rometools.github.io/rome/
    +http://rometools.com/rome

    Project Organization

    This project does not belong to an organization.

    @@ -257,12 +290,12 @@ rome Version -1.5.0-SNAPSHOT +1.7.0-SNAPSHOT Type jar -JDK Rev +Java Version 1.6 @@ -272,7 +305,7 @@ - \ No newline at end of file + diff --git a/source-repository.html b/source-repository.html index 09008d9..a8d4264 100644 --- a/source-repository.html +++ b/source-repository.html @@ -1,15 +1,15 @@ - + - ROME - Source Repository + ROME - Source Code Management @@ -21,12 +21,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -101,23 +148,16 @@
  • - + - About + Dependencies
  • - + - Plugin Management -
  • - -
  • - - - - Distribution Management + Dependency Convergence
  • @@ -127,46 +167,6 @@ Dependency Information
  • -
  • - - Source Repository -
  • - -
  • - - - - Mailing Lists -
  • - -
  • - - - - Issue Tracking -
  • - -
  • - - - - Continuous Integration -
  • - -
  • - - - - Project Plugins -
  • - -
  • - - - - Project License -
  • -
  • @@ -176,23 +176,56 @@
  • - + - Project Team + Distribution Management
  • - + - Project Summary + About
  • - + - Dependencies + Licenses +
  • + +
  • + + + + Plugin Management +
  • + +
  • + + + + Plugins +
  • + +
  • + + + + Team +
  • + +
  • + + Source Code Management +
  • + +
  • + + + + Summary
  • @@ -218,24 +251,24 @@

    Overview

    -

    This project uses GIT to manage its source code. Instructions on GIT use can be found at http://git-scm.com/documentation.

    +

    This project uses Git to manage its source code. Instructions on Git use can be found at http://git-scm.com/documentation.

    -

    Web Access

    -

    The following is a link to the online source repository.

    +

    Web Browser Access

    +

    The following is a link to a browsable version of the source repository:

    -
    https://github.com/rometools/rome
    +
    https://github.com/rometools/rome/rome
    -

    Anonymous access

    -

    The source can be checked out anonymously from GIT with this command (See http://git-scm.com/docs/git-clone):

    +

    Anonymous Access

    +

    The source can be checked out anonymously from Git with this command (See http://git-scm.com/docs/git-clone):

    -
    $ git clone git@github.com:rometools/rome.git
    +
    $ git clone ssh://github.com/rometools/rome.git
    -

    Developer access

    -

    Only project developers can access the GIT tree via this method (See http://git-scm.com/docs/git-clone).

    +

    Developer Access

    +

    Only project developers can access the Git tree via this method (See http://git-scm.com/docs/git-clone).

    -
    $ git clone git@github.com:rometools/rome.git
    +
    $ git clone ssh://git@github.com/rometools/rome.git
    -

    Access from behind a firewall

    +

    Access from Behind a Firewall

    Refer to the documentation of the SCM used for more information about access behind a firewall.

    @@ -245,7 +278,7 @@ - \ No newline at end of file + diff --git a/team-list.html b/team-list.html index 291ec4c..2d36161 100644 --- a/team-list.html +++ b/team-list.html @@ -1,15 +1,15 @@ - + - ROME - Team list + ROME - Project Team @@ -21,12 +21,24 @@ + + + + + + Fork me on GitHub + + + +
    @@ -90,8 +102,43 @@ ROME Development Proposals + +
  • + + + + Modules +
  • + +
  • + + + + Fetcher +
  • + +
  • + + + + OPML +
  • + +
  • + + + + Propono +
  • + +
  • + + + + Certiorem +
  • - +
  • @@ -101,23 +148,16 @@
  • - + - About + Dependencies
  • - + - Plugin Management -
  • - -
  • - - - - Distribution Management + Dependency Convergence
  • @@ -127,48 +167,6 @@ Dependency Information
  • -
  • - - - - Source Repository -
  • - -
  • - - - - Mailing Lists -
  • - -
  • - - - - Issue Tracking -
  • - -
  • - - - - Continuous Integration -
  • - -
  • - - - - Project Plugins -
  • - -
  • - - - - Project License -
  • -
  • @@ -176,23 +174,58 @@ Dependency Management
  • -
  • - - Project Team -
  • -
  • - + - Project Summary + Distribution Management
  • - + - Dependencies + About +
  • + +
  • + + + + Licenses +
  • + +
  • + + + + Plugin Management +
  • + +
  • + + + + Plugins +
  • + +
  • + + Team +
  • + +
  • + + + + Source Code Management +
  • + +
  • + + + + Summary
  • @@ -217,9 +250,9 @@
    -

    The Team

    +

    Project Team

    A successful project requires many people to play many roles. Some members write code or documentation, while others are valuable as testers, submitting patches and suggestions.

    -

    The team is comprised of Members and Contributors. Members have direct access to the source of a project and actively evolve the code-base. Contributors improve the project through submission of patches and suggestions to the Members. The number of Contributors to the project is unbounded. Get involved today. All contributions to the project are greatly appreciated.

    +

    The project team is comprised of Members and Contributors. Members have direct access to the source of a project and actively evolve the code-base. Contributors improve the project through submission of patches and suggestions to the Members. The number of Contributors to the project is unbounded. Get involved today. All contributions to the project are greatly appreciated.

    Members

    The following is a list of developers with commit privileges that have directly contributed to the project in one way or another.

    @@ -230,97 +263,73 @@ Name Email URL -Time Zone -Actual Time (GMT) +Time Zone - Alejandro Abdelnur - http://blog.sun.com/roller/page/tucu -0 -0 +0 - Dave Johnson - http://rollerweblogger.org/roller --5 --5 +-5 - Elaine Chien - - -0 -0 +0 -- -Patrick Chanezon -- -http://www.chanezon.com/pat/weblog --9 --9 - - -- -Patrick Gotthard -- -http://www.patrick-gotthard.de -+1 -+1 - - -- -Robert Cooper -kebernet@gmail.com -http://www.screaming-penguin.com --4 --4 - - farrukhnajmi Farrukh Najmi - http://www.wellfleetsoftware.com/farrukh -- -- - +- + imk Martin Kurz - - -Europe/Berlin -Europe/Berlin
    +Europe/Berlin + + +- +Nick Lothian +- +http://nicklothian.com +- + + +- +Patrick Chanezon +- +http://www.chanezon.com/pat/weblog +-9 + + +- +Patrick Gotthard +patrick@patrick-gotthard.de +http://www.patrick-gotthard.de ++1 + + +kebernet +Robert Cooper +kebernet@gmail.com +http://www.kebernet.net +-4

    Contributors

    -

    There are no contributors listed for this project. Please check back again later.

    +

    There are no contributors listed for this project. Please check back again later.

    @@ -329,7 +338,7 @@ window.onLoad = init(); - \ No newline at end of file +