com.bea.apps.groupspace.rss.feed
Class FeedCm

java.lang.Object
  extended by com.bea.apps.groupspace.rss.feed.FeedCm

public class FeedCm
extends Object

Frontend for interacting with the Content Management controls utilized for persistence. This class is intended to be used by FeedOps and to handle persistence for Feeds.


Field Summary
protected  FeedEntriesControlBean feedEntriesBean
          FeedEntriesControl needed for feed entries persistence
protected  FeedFoldersControlBean feedFoldersBean
          FeedFoldersControl needed for feed folders persistence
 
Constructor Summary
FeedCm(FeedFoldersControlBean foldersBean, FeedEntriesControlBean entriesBean)
          This constructor requires FeedFolderControl and FeedEntriesControl to be provided for persistence of feeds to be accomplished
 
Method Summary
 List<Feed> getAllFeeds()
          Return all feeds
 List<FeedEntryItem> getFeedEntries(String feedUrl, CommunityContent.Visibility visibility)
          Retrieve a List of FeedEntries from a specific FeedFolder and Visibility
 FeedEntryItem getFeedEntry(String uid, CommunityContent.Visibility visibility)
          Retrieve a single FeedEntry from CM
protected  FeedFolder lookupFolder(String feedUrl, CommunityContent.Visibility visibility)
          Looks up a FeedFolder in CM with specified visibility
 void persistFeedEntries(List<FeedEntryItem> feedEntries, String feedUrl, CommunityContent.Visibility visibility)
          Store a list of FeedEntries to a FeedFolder Prerequisite: FeedFolder should exist in CM, because the feed should be subscribed before attempting to store Entries
 void removeFeedEntries(String feedUrl, List<FeedEntryItem> feedEntries, CommunityContent.Visibility visibility)
          Remove a list of FeedEntries from a FeedFolder
 FeedEntry setArchival(FeedEntry feedEntry, boolean archive)
          Set the archival status for an entry
protected  boolean updateEntry(FeedEntry cmEntry)
          Update the persisted feed entry
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

feedEntriesBean

protected FeedEntriesControlBean feedEntriesBean
FeedEntriesControl needed for feed entries persistence


feedFoldersBean

protected FeedFoldersControlBean feedFoldersBean
FeedFoldersControl needed for feed folders persistence

Constructor Detail

FeedCm

public FeedCm(FeedFoldersControlBean foldersBean,
              FeedEntriesControlBean entriesBean)
       throws Exception
This constructor requires FeedFolderControl and FeedEntriesControl to be provided for persistence of feeds to be accomplished

Parameters
foldersBean - FeedFoldersControl
entriesBean - FeedEntriesControl
Throws
Exception
Method Detail

removeFeedEntries

public void removeFeedEntries(String feedUrl,
                              List<FeedEntryItem> feedEntries,
                              CommunityContent.Visibility visibility)
Remove a list of FeedEntries from a FeedFolder

Parameters
feedUrl - Url string for the Feed
feedEntries - A list of Feed Entries that are associated with Feed Url provided
visibility - Visibility context of the feed

persistFeedEntries

public void persistFeedEntries(List<FeedEntryItem> feedEntries,
                               String feedUrl,
                               CommunityContent.Visibility visibility)
Store a list of FeedEntries to a FeedFolder Prerequisite: FeedFolder should exist in CM, because the feed should be subscribed before attempting to store Entries

Parameters
feedEntries - The list of entries to be stored.
feedUrl - URL of the feed the feedEntries are related to
visibility - Visibility context of the feed.

getFeedEntry

public FeedEntryItem getFeedEntry(String uid,
                                  CommunityContent.Visibility visibility)
Retrieve a single FeedEntry from CM

Parameters
uid - Uniuqe id of the feed entry
visibility - Visibility context of the feed entry
Returns
found feed entry or null

setArchival

public FeedEntry setArchival(FeedEntry feedEntry,
                             boolean archive)
                      throws AuthorizationException,
                             NoSuchNodeException
Set the archival status for an entry

Parameters
feedEntry - Feed entry for which to modify archival status
archive - Archive status to set for the FeedEntry
Returns
If the operation was succesful or not
Throws
AuthorizationException
NoSuchNodeException

getAllFeeds

public List<Feed> getAllFeeds()
                       throws Exception
Return all feeds

Returns
A list of Feeds
Throws
Exception

getFeedEntries

public List<FeedEntryItem> getFeedEntries(String feedUrl,
                                          CommunityContent.Visibility visibility)
                                   throws NullFeedException
Retrieve a List of FeedEntries from a specific FeedFolder and Visibility

Parameters
feedUrl - URL of the feed feedEntries are coming from
visibility - Visibility context of the feed. Same feed may be stored in personal, private and public contexts
Returns
List list of feed entries for the RSS Feed identified by feedUrl and visibility
Throws
NullFeedException - If the specified feed is not found in CM in the given visibility context

updateEntry

protected boolean updateEntry(FeedEntry cmEntry)
                       throws AuthorizationException,
                              NoSuchNodeException
Update the persisted feed entry

Parameters
cmEntry - Feed entry to update
Returns
operation success or failure
Throws
AuthorizationException
NoSuchNodeException

lookupFolder

protected FeedFolder lookupFolder(String feedUrl,
                                  CommunityContent.Visibility visibility)
Looks up a FeedFolder in CM with specified visibility

Parameters
feedUrl - Url of feed to look up
visibility - Visibility context of feed
Returns
FeedFolder with specified url & visibility or null if the folder does not exist


Copyright © 2006 BEA Systems, Inc. All Rights Reserved