com.sun.syndication.feed.synd
Class SyndCategoryListFacade

java.lang.Object
  extended byjava.util.AbstractCollection
      extended byjava.util.AbstractList
          extended bycom.sun.syndication.feed.synd.SyndCategoryListFacade
All Implemented Interfaces:
java.util.Collection, java.util.List

public class SyndCategoryListFacade
extends java.util.AbstractList

List implementation for SyndCategory elements. To be directly used by the SyndFeed and SyndEntry classes only.

It acts as a facade on top of the DCSubject elements of the underlying list and remains in synch with it. It is possible to work on either list, the categories one or the subjects one and they remain in synch.

This is necessary because the SyndFeed categories are just a convenience to access the DublinCore subjects.

All this mess to avoid making DCSubject implement SyndCategoryI (which it would be odd).

Author:
Alejandro Abdelnur

Field Summary
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
SyndCategoryListFacade()
          Default constructor.
SyndCategoryListFacade(java.util.List subjects)
          Creates a facade list of categories on top the given subject list.
 
Method Summary
 void add(int index, java.lang.Object obj)
          Adds a category to the list.
static java.util.List convertElementsSyndCategoryToSubject(java.util.List cList)
          Returns a list with the DCSubjectI elements of the SyndCategory list facade.
 java.lang.Object get(int index)
          Gets the category by index.
 java.lang.Object remove(int index)
          Removes a category element from a specific position.
 java.lang.Object set(int index, java.lang.Object obj)
          Sets a category in an existing position in the list.
 int size()
          Returns the size of the list.
 
Methods inherited from class java.util.AbstractList
add, addAll, clear, equals, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, removeRange, subList
 
Methods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray
 

Constructor Detail

SyndCategoryListFacade

public SyndCategoryListFacade()
Default constructor. Creates and empty list.


SyndCategoryListFacade

public SyndCategoryListFacade(java.util.List subjects)
Creates a facade list of categories on top the given subject list.

Parameters:
subjects - the list of subjects to create the facade.
Method Detail

get

public java.lang.Object get(int index)
Gets the category by index.

Parameters:
index - the index position to retrieve the category.
Returns:
the SyndCategory in position index, null if none.

size

public int size()
Returns the size of the list.

Returns:
the size of the list.

set

public java.lang.Object set(int index,
                            java.lang.Object obj)
Sets a category in an existing position in the list.

Parameters:
index - position to set the category.
obj - the SyndCategory object to set.
Returns:
the SyndCategory object that is being replaced, null if none.

add

public void add(int index,
                java.lang.Object obj)
Adds a category to the list.

Parameters:
index - position to add the category.
obj - the SyndCategory object to add.

remove

public java.lang.Object remove(int index)
Removes a category element from a specific position.

Parameters:
index - position to remove the category from.
Returns:
the SyndCategory being removed from position index, null if none.

convertElementsSyndCategoryToSubject

public static java.util.List convertElementsSyndCategoryToSubject(java.util.List cList)
Returns a list with the DCSubjectI elements of the SyndCategory list facade. To be used by the SyndFeed class only.

Parameters:
cList - the list with SyndCategory elements to convert to subject list.
Returns:
a list with DCSubjectI elements corresponding to the categories in the given list.


Copyright © 2004 Sun Microsystems. All Rights Reserved.