## net.i2p.addressbook
Class SubscriptionList

    java.lang.Object
      net.i2p.addressbook.SubscriptionList

     class SubscriptionList

extends Object

A list of Subscriptions loaded from a file.

Author:
  Ragnarok

Constructor Summary
`SubscriptionList(File locationsFile, File etagsFile, File lastModifiedFile, File lastFetchedFile, long delay, List<String> defaultSubs, String proxyHost, int proxyPort)` Construct a SubscriptionList using the urls from locationsFile and, if available, the etags and last-modified headers loaded from etagsFile and lastModifiedFile.

Method Summary
`SubscriptionIterator` `iterator()` Return an iterator over the AddressBooks represented by the Subscriptions in this SubscriptionList.
`void` `write()` Write the etag and last-modified headers, and the last-fetched time, for each Subscription to files.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SubscriptionList

    public SubscriptionList(File locationsFile,
                            File etagsFile,
                            File lastModifiedFile,
                            File lastFetchedFile,
                            long delay,
                            List<String> defaultSubs,
                            String proxyHost,
                            int proxyPort)

  Construct a SubscriptionList using the urls from locationsFile and, if available, the etags and last-modified headers loaded from etagsFile and lastModifiedFile.

  Parameters:
    `locationsFile` - A file containing one url on each line.
    `etagsFile` - A file containg the etag headers used for conditional GET. The file is in the format "url=etag".
    `lastModifiedFile` - A file containg the last-modified headers used for conditional GET. The file is in the format "url=leastmodified".
    `delay` - the minimum delay since last fetched for the iterator to actually fetch
    `defaultSubs` - default subscription file
    `proxyHost` - proxy hostname
    `proxyPort` - proxy port number

Method Detail

### iterator

    public SubscriptionIterator iterator()

  Return an iterator over the AddressBooks represented by the Subscriptions in this SubscriptionList.

  Returns:
    A SubscriptionIterator.

### write

    public void write()

  Write the etag and last-modified headers, and the last-fetched time, for each Subscription to files. BUG - If the subscription URL is a cgi containing an '=' the files won't be read back correctly; the '=' should be escaped.