com.hlcl.rql.util.as
Class PageArrayList

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractList<E>
          extended by java.util.ArrayList
              extended by com.hlcl.rql.util.as.PageArrayList
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Iterable, java.util.Collection, java.util.List, java.util.RandomAccess

public class PageArrayList
extends java.util.ArrayList
implements java.util.List

Diese Klasse bietet Selektionen auf Listen von Seiten.

Author:
lejafr
See Also:
Serialized Form

Constructor Summary
PageArrayList()
          Constructs an empty list.
PageArrayList(java.util.Collection c)
          Constructs a list containing the elements of the specified collection, in the order they are returned by the collection's iterator.
PageArrayList(int initialCapacity)
          Constructs an empty list with the specified initial capacity.
 
Method Summary
 java.util.Map asPageGuidMap()
          Returns a HashMap where key=page guid and value=page itself.
 java.util.List<java.lang.String> collectHeadlines()
          Liefert eine Liste mit allen Überschriften der Seiten dieser Liste.
 java.util.List<java.lang.String> collectHeadlinesAndIds()
          Liefert eine Liste mit allen Überschriften und IDs der Seiten dieser Liste.
 java.util.Set collectLastChangedByUsers()
          Returns a Set of users who last changed the pages in this list.
 java.util.List<java.lang.String> collectTemplateNames()
          Liefert eine Liste mit allen Templatenamen der Seiten dieser Liste.
 boolean containsByPageId(java.lang.String pageId)
          Liefert true, falls diese Liste eine Seite mit der gegebenen Page ID enthält, sonst false.
 boolean containsPageWithFilename(java.lang.String filename)
          Liefert truel, falls eine Seite mit dem gegebenen Dateinamen in dieser Liste enthalten ist.
 int deleteAll(boolean ignoreReferences)
          Löscht alle Seiten in dieser Liste.
 void deleteAllWithContainerChilds(java.lang.String containerTemplateElementName, boolean ignoreReferences)
          Löscht alle Seiten inklusive der Containerkindseiten in dieser Liste.
 Page findByFilename(java.lang.String filename)
          Liefert die (erste) Seite mit dem gegebenen Dateinamen aus dieser Liste oder null, falls keine Seite mit diesem Dateinamen enthalten ist.
 Page findByFilenameEndsWith(java.lang.String filenameSuffix)
          Liefert die (erste) Seite deren Dateiname mit filenameSuffix endet aus dieser Liste oder null, falls nicht gefunden.
 Page findByHeadline(java.lang.String headline)
          Liefert die (erste) Seite mit der gegebenen Überschrift aus dieser Liste oder null, falls keine Seite mit der Überschrift enthalten ist.
 Page findByHeadlineStartsWith(java.lang.String headlinePrefix)
          Liefert die (erste) Seite deren Überschrift mit headlinePrefix beginnt aus dieser Liste oder null, falls nicht gefunden.
 Page findByPageId(java.lang.String pageId)
          Liefert die (erste) Seite mit der gegebenen pageId aus dieser Liste oder null, falls keine Seite mit der Überschrift enthalten ist.
 Page findByStandardFieldDateValue(java.lang.String templateElementName, ReddotDate dateValue)
          Liefert die (erste) Seite, deren StandartFieldDate Element templateElementName den Wert value hat oder null, falls nicht vorhanden.
 Page findByStandardFieldTextValue(java.lang.String templateElementName, java.lang.String value)
          Liefert die (erste) Seite, deren StandartFieldText Element templateElementName hat den Wert value hat oder null, falls nicht vorhanden.
 Page first()
          Liefert die erste Seite aus dieser Liste
 Page getPage(int index)
          Liefert die Seite am gegebenen index.
 Page last()
          Liefert die letzte Seite aus dieser Liste
 PageArrayList select(PageFilter filter)
          Liefert alle Seiten aus pageList, für die der gegebenen filter true liefert.
 PageArrayList selectAllChangeablePages()
          Liefert eine neue Liste von Seiten, die vom angemeldeten Benutzer änderbar sind.
 PageArrayList selectAllCreatedBy(UserGroup userGroup)
          Liefert eine neue Liste von Seiten, die von den Benutzern der gegebenen Gruppe erstellt wurden.
 PageArrayList selectAllLastChangedBy(java.lang.String userName)
          Liefert eine neue Liste von Seiten, die vom gegebenen Benutzer zuletzt geändert wurden.
 PageArrayList selectAllLastChangedOnBefore(int marginDays)
          Liefert eine neue Liste von Seiten, deren letztes Änderungsdatum marginDays vor heute liegt.
 PageArrayList selectAllLastChangedOnBefore(ReddotDate margin)
          Liefert eine neue Liste von Seiten, deren letztes Änderungsdatum vor dem gegebenen Datum margin liegt.
 PageArrayList selectAllPagesBasedOn(java.lang.String templateName)
          Liefert eine neue Liste von Seiten deren Template den gegebenen Namen hat.
 PageArrayList selectAllPagesContaining(java.lang.String templateElementName)
          Liefert eine neue Liste von Seiten die ein Element mit dem gegebenen Namen besitzen.
 PageArrayList selectAllPagesHeadlineStartsWith(java.lang.String prefix)
          Liefert eine neue Liste von Seiten deren Überschrift mit dem gegebenen prefix beginnen.
 PageArrayList selectAllPagesInStateDraft()
          Liefert eine neue Liste von Seiten, die alle im Status draftChanged or draftNew sind.
 PageArrayList selectAllPagesInStateDraftChanged()
          Liefert eine neue Liste von Seiten, die alle im Status draftChanged sind.
 PageArrayList selectAllPagesInStateDraftNew()
          Liefert eine neue Liste von Seiten, die alle im Status draftNew sind.
 PageArrayList selectAllPagesInStateReleased()
          Liefert eine neue Liste von Seiten, die alle im Status released sind.
 PageArrayList selectAllPagesInStates(boolean draft, boolean draftNew, boolean draftChanged, boolean waitingForRelease, boolean waitingForCorrection, boolean released)
          Liefert eine neue Liste von Seiten, die in einem der gegebenen Stati sind.
 PageArrayList selectAllPagesInStateWaitingForCorrection()
          Liefert eine neue Liste von Seiten, die alle im Status waitingForCorrection sind.
 PageArrayList selectAllPagesInStateWaitingForRelease()
          Liefert eine neue Liste von Seiten, die alle im Status waitingForRelease sind.
 PageArrayList selectAllPagesNotContaining(java.lang.String templateElementName)
          Liefert eine neue Liste von Seiten die das gegebene Element nicht haben.
 PageArrayList selectAllPagesWithHeadlineIn(java.util.Collection<java.lang.String> headlines)
          Liefert alle Seiten aus dieser Liste, deren headline in der gegebenen Liste enthalten ist.
 PageArrayList selectAllPagesWithoutHeadline()
          Liefert eine neue Liste von Seiten ohne Überschrift (liefert nur die GUID-Seiten).
 PageArrayList selectAllTemplateNamed(java.lang.String templateName)
          Liefert eine neue Liste von Seiten, deren Template den gegebenen Namen hat..
 PageArrayList sort(PageComparator comparator)
          Sortiert diese Liste mittels des gegebenen Comparators.
 
Methods inherited from class java.util.ArrayList
add, add, addAll, addAll, clear, clone, contains, ensureCapacity, get, indexOf, isEmpty, lastIndexOf, remove, remove, set, size, toArray, toArray, trimToSize
 
Methods inherited from class java.util.AbstractList
equals, hashCode, iterator, listIterator, listIterator, subList
 
Methods inherited from class java.util.AbstractCollection
containsAll, removeAll, retainAll, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, retainAll, set, size, subList, toArray, toArray
 

Constructor Detail

PageArrayList

public PageArrayList()
Constructs an empty list.


PageArrayList

public PageArrayList(java.util.Collection c)
Constructs a list containing the elements of the specified collection, in the order they are returned by the collection's iterator. The ArrayList instance has an initial capacity of 110% the size of the specified collection.


PageArrayList

public PageArrayList(int initialCapacity)
Constructs an empty list with the specified initial capacity.

Parameters:
initialCapacity - the initial capacity of the list.
Method Detail

asPageGuidMap

public java.util.Map asPageGuidMap()
                            throws RQLException
Returns a HashMap where key=page guid and value=page itself.

Throws:
RQLException

collectHeadlines

public java.util.List<java.lang.String> collectHeadlines()
                                                  throws RQLException
Liefert eine Liste mit allen Überschriften der Seiten dieser Liste.

Throws:
RQLException

collectTemplateNames

public java.util.List<java.lang.String> collectTemplateNames()
                                                      throws RQLException
Liefert eine Liste mit allen Templatenamen der Seiten dieser Liste.

Throws:
RQLException

collectHeadlinesAndIds

public java.util.List<java.lang.String> collectHeadlinesAndIds()
                                                        throws RQLException
Liefert eine Liste mit allen Überschriften und IDs der Seiten dieser Liste.

Throws:
RQLException

collectLastChangedByUsers

public java.util.Set collectLastChangedByUsers()
                                        throws RQLException
Returns a Set of users who last changed the pages in this list.

Throws:
RQLException

containsPageWithFilename

public boolean containsPageWithFilename(java.lang.String filename)
                                 throws RQLException
Liefert truel, falls eine Seite mit dem gegebenen Dateinamen in dieser Liste enthalten ist.

Prüft mit #startsWith, da in RD häufig der Extender nicht im filename auftaucht.

Throws:
RQLException

deleteAll

public int deleteAll(boolean ignoreReferences)
              throws RQLException
Löscht alle Seiten in dieser Liste. Diese Liste ist danach leer. Auch mehrfach verlinkte Seiten werden gelöscht!

Returns:
number of deleted pages
Throws:
RQLException

deleteAllWithContainerChilds

public void deleteAllWithContainerChilds(java.lang.String containerTemplateElementName,
                                         boolean ignoreReferences)
                                  throws RQLException
Löscht alle Seiten inklusive der Containerkindseiten in dieser Liste. Diese Liste ist danach leer. Auch mehrfach verlinkte Seiten werden gelöscht!

Throws:
RQLException

findByFilename

public Page findByFilename(java.lang.String filename)
                    throws RQLException
Liefert die (erste) Seite mit dem gegebenen Dateinamen aus dieser Liste oder null, falls keine Seite mit diesem Dateinamen enthalten ist.

Prüft mit #startsWith, da in RD häufig der Extender nicht im filename auftaucht.

Throws:
RQLException

findByFilenameEndsWith

public Page findByFilenameEndsWith(java.lang.String filenameSuffix)
                            throws RQLException
Liefert die (erste) Seite deren Dateiname mit filenameSuffix endet aus dieser Liste oder null, falls nicht gefunden.

Prüft mit #endsWith().

Throws:
RQLException

findByHeadline

public Page findByHeadline(java.lang.String headline)
                    throws RQLException
Liefert die (erste) Seite mit der gegebenen Überschrift aus dieser Liste oder null, falls keine Seite mit der Überschrift enthalten ist.

Prüft mit #equals().

Throws:
RQLException

findByHeadlineStartsWith

public Page findByHeadlineStartsWith(java.lang.String headlinePrefix)
                              throws RQLException
Liefert die (erste) Seite deren Überschrift mit headlinePrefix beginnt aus dieser Liste oder null, falls nicht gefunden.

Prüft mit #startsWith().

Throws:
RQLException

findByPageId

public Page findByPageId(java.lang.String pageId)
                  throws RQLException
Liefert die (erste) Seite mit der gegebenen pageId aus dieser Liste oder null, falls keine Seite mit der Überschrift enthalten ist.

Prüft mit #equals().

Throws:
RQLException

containsByPageId

public boolean containsByPageId(java.lang.String pageId)
                         throws RQLException
Liefert true, falls diese Liste eine Seite mit der gegebenen Page ID enthält, sonst false.

Prüft mit #equals().

Throws:
RQLException

findByStandardFieldDateValue

public Page findByStandardFieldDateValue(java.lang.String templateElementName,
                                         ReddotDate dateValue)
                                  throws RQLException
Liefert die (erste) Seite, deren StandartFieldDate Element templateElementName den Wert value hat oder null, falls nicht vorhanden.

Prüft das Datum per String mit dem pattern yyyyMMdd. TODO werden hier auch draft seiten anderer autoren mit gefunden?

Throws:
RQLException

findByStandardFieldTextValue

public Page findByStandardFieldTextValue(java.lang.String templateElementName,
                                         java.lang.String value)
                                  throws RQLException
Liefert die (erste) Seite, deren StandartFieldText Element templateElementName hat den Wert value hat oder null, falls nicht vorhanden.

Prüft mit #equals(). TODO werden hier auch draft seiten anderer autoren mit gefunden?

Throws:
RQLException

first

public Page first()
           throws RQLException
Liefert die erste Seite aus dieser Liste

Throws:
java.lang.IndexOutOfBoundsException - if index is out of range (index < 0 || index >= size()).
RQLException

getPage

public Page getPage(int index)
             throws RQLException
Liefert die Seite am gegebenen index.

Throws:
java.lang.IndexOutOfBoundsException - if index is out of range (index < 0 || index >= size()).
RQLException

last

public Page last()
          throws RQLException
Liefert die letzte Seite aus dieser Liste

Throws:
java.lang.IndexOutOfBoundsException - if index is out of range (index < 0 || index >= size()).
RQLException

select

public PageArrayList select(PageFilter filter)
                     throws RQLException
Liefert alle Seiten aus pageList, für die der gegebenen filter true liefert. Diese Liste selbst wird dabei nicht verändert!

Parameters:
filter - ein Seitenfilter
Throws:
RQLException
See Also:
PageFiler

selectAllChangeablePages

public PageArrayList selectAllChangeablePages()
                                       throws RQLException
Liefert eine neue Liste von Seiten, die vom angemeldeten Benutzer änderbar sind.

Throws:
RQLException

selectAllCreatedBy

public PageArrayList selectAllCreatedBy(UserGroup userGroup)
                                 throws RQLException
Liefert eine neue Liste von Seiten, die von den Benutzern der gegebenen Gruppe erstellt wurden.

Throws:
RQLException

selectAllLastChangedOnBefore

public PageArrayList selectAllLastChangedOnBefore(ReddotDate margin)
                                           throws RQLException
Liefert eine neue Liste von Seiten, deren letztes Änderungsdatum vor dem gegebenen Datum margin liegt.

Throws:
RQLException

selectAllLastChangedOnBefore

public PageArrayList selectAllLastChangedOnBefore(int marginDays)
                                           throws RQLException
Liefert eine neue Liste von Seiten, deren letztes Änderungsdatum marginDays vor heute liegt.

Throws:
RQLException

selectAllLastChangedBy

public PageArrayList selectAllLastChangedBy(java.lang.String userName)
                                     throws RQLException
Liefert eine neue Liste von Seiten, die vom gegebenen Benutzer zuletzt geändert wurden.

Throws:
RQLException

selectAllPagesBasedOn

public PageArrayList selectAllPagesBasedOn(java.lang.String templateName)
                                    throws RQLException
Liefert eine neue Liste von Seiten deren Template den gegebenen Namen hat.

Throws:
RQLException

selectAllPagesContaining

public PageArrayList selectAllPagesContaining(java.lang.String templateElementName)
                                       throws RQLException
Liefert eine neue Liste von Seiten die ein Element mit dem gegebenen Namen besitzen.

Throws:
RQLException

selectAllPagesInStateDraft

public PageArrayList selectAllPagesInStateDraft()
                                         throws RQLException
Liefert eine neue Liste von Seiten, die alle im Status draftChanged or draftNew sind.

Throws:
RQLException

selectAllPagesInStateDraftChanged

public PageArrayList selectAllPagesInStateDraftChanged()
                                                throws RQLException
Liefert eine neue Liste von Seiten, die alle im Status draftChanged sind.

Throws:
RQLException

selectAllPagesInStateDraftNew

public PageArrayList selectAllPagesInStateDraftNew()
                                            throws RQLException
Liefert eine neue Liste von Seiten, die alle im Status draftNew sind.

Throws:
RQLException

selectAllPagesInStateReleased

public PageArrayList selectAllPagesInStateReleased()
                                            throws RQLException
Liefert eine neue Liste von Seiten, die alle im Status released sind.

Throws:
RQLException

selectAllPagesInStates

public PageArrayList selectAllPagesInStates(boolean draft,
                                            boolean draftNew,
                                            boolean draftChanged,
                                            boolean waitingForRelease,
                                            boolean waitingForCorrection,
                                            boolean released)
                                     throws RQLException
Liefert eine neue Liste von Seiten, die in einem der gegebenen Stati sind. Entweder draft oder draftNew and draftChanged für bessere performance.

Throws:
RQLException

selectAllPagesInStateWaitingForCorrection

public PageArrayList selectAllPagesInStateWaitingForCorrection()
                                                        throws RQLException
Liefert eine neue Liste von Seiten, die alle im Status waitingForCorrection sind.

Throws:
RQLException

selectAllPagesInStateWaitingForRelease

public PageArrayList selectAllPagesInStateWaitingForRelease()
                                                     throws RQLException
Liefert eine neue Liste von Seiten, die alle im Status waitingForRelease sind.

Throws:
RQLException

selectAllPagesNotContaining

public PageArrayList selectAllPagesNotContaining(java.lang.String templateElementName)
                                          throws RQLException
Liefert eine neue Liste von Seiten die das gegebene Element nicht haben.

Throws:
RQLException

selectAllPagesWithHeadlineIn

public PageArrayList selectAllPagesWithHeadlineIn(java.util.Collection<java.lang.String> headlines)
                                           throws RQLException
Liefert alle Seiten aus dieser Liste, deren headline in der gegebenen Liste enthalten ist. Diese Liste selbst wird dabei nicht verändert!

Throws:
RQLException

selectAllPagesWithoutHeadline

public PageArrayList selectAllPagesWithoutHeadline()
                                            throws RQLException
Liefert eine neue Liste von Seiten ohne Überschrift (liefert nur die GUID-Seiten).

Throws:
RQLException

selectAllPagesHeadlineStartsWith

public PageArrayList selectAllPagesHeadlineStartsWith(java.lang.String prefix)
                                               throws RQLException
Liefert eine neue Liste von Seiten deren Überschrift mit dem gegebenen prefix beginnen.

Throws:
RQLException

selectAllTemplateNamed

public PageArrayList selectAllTemplateNamed(java.lang.String templateName)
                                     throws RQLException
Liefert eine neue Liste von Seiten, deren Template den gegebenen Namen hat..

Throws:
RQLException

sort

public PageArrayList sort(PageComparator comparator)
Sortiert diese Liste mittels des gegebenen Comparators.

Parameters:
comparator - a java standard comparator