com.hlcl.rql.as
Class MultiLink

java.lang.Object
  extended by com.hlcl.rql.as.MultiLink
All Implemented Interfaces:
CmsClientContainer, PageContainer, ProjectContainer
Direct Known Subclasses:
Container, List

public abstract class MultiLink
extends java.lang.Object
implements PageContainer

Diese Klasse beschreibt einen RedDot MultiLink (Container or Liste).

Author:
LEJAFR

Constructor Summary
MultiLink(Page page, TemplateElement templateElement, java.lang.String name, java.lang.String linkGuid, boolean isReferenceSource)
          Container constructor comment.
 
Method Summary
 void assignAuthorizationPackage(AuthorizationPackage authorizationPackage)
          Ordnet diesem MultiLink das gegebene Berechtigungspaket zu.
 void assignPublicationPackage(PublicationPackage publicationPackage, boolean inherit)
          Ordnet diesem MultiLink das gegebene Exportpaket zu.
 void assignWorkflow(Workflow workflow, boolean inherit)
          Ordnet diesem MultiLink den Workflow mit der gegebenen GUID zu.
 RQLNode callCms(java.lang.String rqlRequest)
          Senden eine Anfrage an das CMS und liefert eine geparste Antwort zurueck.
 java.lang.String callCmsWithoutParsing(java.lang.String rqlRequest)
          Senden eine Anfrage an das CMS und liefert eine ungeparste Antwort zurueck.
 void connectAllChildsTo(MultiLink targetMultiLink)
          Verlinkt alle Kindseiten dieses Links an den gegebenen Ziellink.
 void connectToExistingPage(Page targetPage)
          Linkt die gegebenen Seite an diese Liste oder Container.
 void connectToExistingPage(Page targetPage, boolean addAtBottom)
          Linkt die gegebenen Seite an diese Liste oder Container.
 void connectToExistingPage(Page targetPage, boolean addAtBottom, boolean setMainLink)
          Linkt die gegebenen Seite an diese Liste oder Container.
 Page createAndConnectPage(java.lang.String headline)
          Erzeugt eine neue Seite basierend auf dem einzig zugelassen Template.
 Page createAndConnectPage(java.lang.String headline, boolean addAtBottom)
          Erzeugt eine neue Seite basierend auf dem einzig zugelassen Template.
 Page createAndConnectPage(Template template, java.lang.String headline)
          Erzeugt eine neue Seite basierend auf template an diesem Container.
 Page createAndConnectPage(Template template, java.lang.String headline, boolean addAtBottom)
          Erzeugt eine neue Seite basierend auf template an diesem Container.
 Page createAndConnectPageBehind(Template template, java.lang.String headline, Page positionChild)
          Erzeugt eine neue Seite basierend auf template an diesem MultiLink.
 void disconnectAllChilds()
          Löst die Verlinkung aller Kindseiten von diesem Link.
 void disconnectChild(Page childPage)
          Löst die Verlinkung der gegebenen Kindseite von diesem Link.
 void disconnectChildByPageId(java.lang.String pageId)
          Löst die Verlinkung der Kindseite mit der gegebenen PageId von diesem Link.
 void disconnectChilds(java.lang.String[] pageGuids)
          Löst die Verlinkung der Kindseiten von diesem Link.
 boolean equals(java.lang.Object obj)
          Gleiche CMS Links werden als identisch betrachtet.
 Page findChildPageByHeadline(java.lang.String headline)
          Sucht in den Childseiten die Seite mit der gegebenen headline.
 java.lang.String getAllowedTemplateNames(java.lang.String delimiter)
          Liefert eine String-Liste mit allen hier anlinkbaren Template Namen.
 java.util.List<Template> getAllowedTemplates()
          Liefert eine Liste mit allen hier anlinkbaren Templates.
 PageArrayList getChangeableChildPages()
          Liefert alle an diesen Multilink angehängten Seiten zurück, die für den angemeldeten User änderbar sind.
 int getChangeableChildPagesSize()
          Liefert die Anzahl aller an diesen Multilink angehängten Seiten zurück, die für den angemeldeten User änderbar sind.
 Page getChildPage()
          Liefert die einzige an diesen MultiLink angehängte Seite.
 PageArrayList getChildPages()
          Liefert alle an diesen Multilink angehängten Seiten zurück.
 PageArrayList getChildPagesForTemplate(java.lang.String templateName)
          Liefert alle an diesen Multilink angehängten Seiten zurück deren Template dem gegebenen entspricht.
 java.util.Iterator getChildPagesIterator()
          Liefert einen Iterator über die Liste aller an diesen Multilink angehängten Seiten zurück.
 int getChildPagesSize()
          Liefert die Anzahl der an diesen Multilink angehängten Seiten zurück.
 java.util.List<java.lang.String> getChildPagesTemplateNames()
          Liefert die Templatenamen aller an diesen Multilink angehängten Seiten zurück.
 java.lang.String getChildPagesTemplateNames(java.lang.String namesSeparator)
          Liefert die Templatenamen aller an diesen Multilink angehängten Seiten zurück.
 PageArrayList getChildrenReversed()
          Liefert alle an diesen Multilink angehängten Seiten in umgekehrter Reihenfolge zurück.
 CmsClient getCmsClient()
          Liefert den CmsClient.
 Page getFirstChildPage()
          Returns the first child page from this multi link or null, if less or more children are linked.
 java.lang.String getLinkGuid()
          Liefert die GUID dieses Links.
 java.lang.String getLogonGuid()
          Liefert die RedDot logon GUID.
 Page getMainLinkChildPage()
          Liefert die an diesem Multilink über Hauptlink angehängte Seite zurück.
 java.util.Iterator<MultiLink> getMultiLinksReferencingThisLink()
          Liefert einen Iterator für alle MultiLinks zurück, die auf diesen MultiLink verweisen.
 java.lang.String getName()
          Liefert den Namen dieses MultiLinks in der Seite.
 PageArrayList getNotAllowedChildPages()
          Liefert eine Liste von Kindseiten, deren Template an diesem MultiLink nicht vorbelegt sind.
 Page getPage()
          Liefert die Seite, die diesen MultiLink beinhaltet.
 java.lang.String getPageGuid()
          Liefert die RedDot GUID der Seite.
 Project getProject()
          Liefert das Projekt.
 java.lang.String getProjectGuid()
          Liefert die RedDot GUID des Projekts.
 java.lang.String getSessionKey()
          Liefert den RedDot Session key.
 TemplateElement getTemplateElement()
          Liefert das Template-Element, auf dem dieser Link basiert.
 java.lang.String getTemplateElementName()
          Liefert den Namen des Template-Elements, auf dem dieser Link basiert.
 Workflow getWorkflow()
          Liefert den an diesem Link angehängten Workflow, aber niemals den globalen.
 boolean hasChildPages()
          Liefert true, falls dieser MultiLink mindestens eine Kindseite besitzt.
 int hashCode()
          Gleiche CMS Links werden als identisch betrachtet.
 boolean isAtLeastOneChildMoveableToTarget(Page targetPage, boolean includeReferences)
          Liefert true, falls es mindestens einen Link in targetPage gibt an den eine Kindseite diese Links verschoben werden kann, sonst false.
 boolean isChild(Page page)
          Liefert true, falls die gegebene Seite ein Child dieses Links ist.
 boolean isConnectToExistingPageAllowed(Page targetPage)
          Liefert true, gdw das Template von targetPage an diesem MultiLink zugelassen ist.
 boolean isContainer()
          Liefert immer false.
 boolean isList()
          Liefert immer false.
 boolean isManuallySorted()
          Liefert true genau dann, wenn dieser Multilink manuell sortiert werden kann.
 boolean isMultiLink()
          Liefert immer true, da alle Subklassen Links sind.
 boolean isReferenceSource()
          Liefert true, falls dieser MultiLink einen anderen Link referenziert.
 boolean isTargetContainerAssigned()
          Liefert immer false.
 boolean isTemplateAllowed(Template template)
          Liefert true, falls das gegebenen Template an diesem MultiLink vorbelegt ist.
 void moveAllChildsTo(MultiLink targetMultiLink)
          Verlinkt alle Kindseiten dieses Links an den gegebenen Ziellink und löst die Verlinkung von diesem Link.
 void moveAllChildsTo(MultiLink targetMultiLink, boolean addAtBottom)
          Verlinkt alle Kindseiten dieses Links an den gegebenen Ziellink und löst die Verlinkung von diesem Link.
 void moveChildPage(Page childPage, MultiLink targetMultiLink)
          Verschiebt die gegebenen Kindseite von diesem Link zum targetMultiLink.
 void moveChildPage(Page childPage, MultiLink targetMultiLink, boolean addAtBottom)
          Verschiebt die gegebenen Kindseite von diesem Link zum targetMultiLink.
 void moveChildPageWithoutCheck(Page childPage, MultiLink targetMultiLink, boolean addAtBottom)
          Verschiebt die gegebenen Kindseite von diesem Link zum targetMultiLink.
 void moveChildsTo(PageArrayList childsToMove, MultiLink targetMultiLink)
          Verlinkt alle gegebenen Kindseiten dieses Links an den gegebenen Ziellink und löst die Verlinkung von diesem Link.
 void moveFirstPageToLastPosition()
          Verschiebt die oberste Seite an diesem Multi-Link an die letzte Position.
 void moveLastPageToFirstPosition()
          Verschiebt die unterste Seite an diesem Multi-Link auf die 1.
 void movePageBehind(Page childToMove, Page positionChild)
          Verschiebt die gegebenen Seite childToMove an diesem Multi-Link hinter die Seite positionChild.
 void movePagesHeadlineStartsWithToLastPosition(java.lang.String prefix)
          Verschiebt alle Seiten deren Überschrift mit dem gegebenen Prefix beginnen ans Ende dieser Liste.
 void referenceTo(Anchor targetAnchor)
          Erstellt eine RD Referenz von diesem MultiLink (als Source) zu dem gegebenen target Anchor.
 void referenceTo(MultiLink targetMultiLink)
          Erstellt eine RD Referenz von diesem MultiLink (als Source) zu dem gegebenen target MultiLink.
 void referenceTo(Page targetPage)
          Erstellt eine RD Referenz von diesem MultiLink (als Source) zu der gegebenen target Seite.
 void setSortModeAllAscendingByHeadline()
          Ändert die Sortierungseinstellungen dieses MultiLinks.
 void setSortModeManually()
          Ändert die Sortierungseinstellungen dieses MultiLinks auf manuelle Sortierung.
 PageArrayList sortChangeableChildrenByDateDesc(java.lang.String standardFieldDateTmpltElemName)
          Sortiert alle änderbaren Kindseiten dieses MultiLinks nach dem gegebenen Datumselement absteigend.
 PageArrayList sortChilds(PageComparator comparator)
          Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen comparator.
 PageArrayList sortChildsByDateAsc(java.lang.String standardFieldDateTmpltElemName)
          Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen Datumselement aufsteigend.
 PageArrayList sortChildsByDateDesc(java.lang.String standardFieldDateTmpltElemName)
          Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen Datumselement absteigend.
 PageArrayList sortChildsByDateDescAndHeadlineAsc(java.lang.String standardFieldDateTmpltElemName)
          Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen Datumselement absteigend und der Seitenüberschrift aufsteigend.
 PageArrayList sortChildsByHeadlineAsc()
          Sortiert alle Kindseiten dieses MultiLinks aufsteigend nach Überschrift.
 PageArrayList sortChildsByHeadlineDesc()
          Sortiert alle Kindseiten dieses MultiLinks absteigend nach Überschrift.
 PageArrayList sortChildsByIdAsc()
          Sortiert alle Kindseiten dieses MultiLinks nach der Page ID aufsteigend.
 PageArrayList sortChildsByIdDesc()
          Sortiert alle Kindseiten dieses MultiLinks nach der Page ID absteigend.
 PageArrayList sortChildsByStandardFieldTextAsc(java.lang.String standardFieldTextTmpltElemName)
          Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen StandardFieldText Element aufsteigend.
 PageArrayList sortChildsByStandardFieldTextDesc(java.lang.String standardFieldTextTmpltElemName)
          Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen Standardfieldtext Element absteigend.
 void unlinkAuthorizationPackage(AuthorizationPackage authorizationPackage)
          Entfernt das gegebene Detailberechtigungspaket von diesem MultiLink.
 boolean unlinkWorkflow()
          Entfernt den angelinkten Workflow von diesem MultiLink.
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MultiLink

public MultiLink(Page page,
                 TemplateElement templateElement,
                 java.lang.String name,
                 java.lang.String linkGuid,
                 boolean isReferenceSource)
Container constructor comment.

Parameters:
page - Seite, die diesen Multi-Link beinhaltet.
name - Name des Links auf Seite page
linkGuid - GUID des Links auf Seite page
isReferenceSource - Link referenziert ein anderes Element
See Also:
Project.getMultiLinkByGuid(String)
Method Detail

assignAuthorizationPackage

public void assignAuthorizationPackage(AuthorizationPackage authorizationPackage)
                                throws RQLException
Ordnet diesem MultiLink das gegebene Berechtigungspaket zu.

Throws:
RQLException

assignPublicationPackage

public void assignPublicationPackage(PublicationPackage publicationPackage,
                                     boolean inherit)
                              throws RQLException
Ordnet diesem MultiLink das gegebene Exportpaket zu.

Parameters:
inherit - =true, Exportpaket wird an alle Unterstrukturen vererbt.
Throws:
RQLException

assignWorkflow

public void assignWorkflow(Workflow workflow,
                           boolean inherit)
                    throws RQLException
Ordnet diesem MultiLink den Workflow mit der gegebenen GUID zu.

Throws:
RQLException

callCms

public RQLNode callCms(java.lang.String rqlRequest)
                throws RQLException
Senden eine Anfrage an das CMS und liefert eine geparste Antwort zurueck.

Specified by:
callCms in interface CmsClientContainer
Throws:
RQLException

callCmsWithoutParsing

public java.lang.String callCmsWithoutParsing(java.lang.String rqlRequest)
                                       throws RQLException
Senden eine Anfrage an das CMS und liefert eine ungeparste Antwort zurueck. Erforderlich für die Ermittlung des Werts eines Textelements.

Specified by:
callCmsWithoutParsing in interface CmsClientContainer
Throws:
RQLException

connectAllChildsTo

public void connectAllChildsTo(MultiLink targetMultiLink)
                        throws RQLException
Verlinkt alle Kindseiten dieses Links an den gegebenen Ziellink. Hängt alle Seiten unten an.

Alle Kindseiten bleiben an diesem Link erhalten. Der Mainlink wird nicht verändert.

Parameters:
targetMultiLink - Link, an alle Kindseiten dieses Links ebenfalls angehängt werden sollen
Throws:
RQLException

connectToExistingPage

public void connectToExistingPage(Page targetPage)
                           throws RQLException
Linkt die gegebenen Seite an diese Liste oder Container. Die targetPage wird an das Ende dieses MultiLinks verschoben. Der Hauptlink bleibt unverändert.

Parameters:
targetPage - Seite, die an diesen MultiLink angehängt wird
Throws:
RQLException

connectToExistingPage

public void connectToExistingPage(Page targetPage,
                                  boolean addAtBottom)
                           throws RQLException
Linkt die gegebenen Seite an diese Liste oder Container.

Parameters:
targetPage - Seite, die an diesen MultiLink angehängt wird
addAtBottom - verschiebt die targetPage an das Ende aller Kindseiten
Throws:
RQLException

connectToExistingPage

public void connectToExistingPage(Page targetPage,
                                  boolean addAtBottom,
                                  boolean setMainLink)
                           throws RQLException
Linkt die gegebenen Seite an diese Liste oder Container. Das RQL tut nichts (und liefert keinen Fehler), falls der Autor auf der targetPage keine Rechte hat.

Parameters:
targetPage - Seite, die an diesen MultiLink angehängt wird
addAtBottom - verschiebt die targetPage an das Ende aller Kindseiten
setMainLink - Ändert den Mainlink der targetPage auf diesen Link
Throws:
RQLException

createAndConnectPage

public Page createAndConnectPage(java.lang.String headline)
                          throws RQLException
Erzeugt eine neue Seite basierend auf dem einzig zugelassen Template. Die Seite wird an diesem MultiLink nach unten verschoben.

Parameters:
headline - Ueberschrift der neu erstellten Seite
Throws:
AmbiguousTemplateException
RQLException

createAndConnectPage

public Page createAndConnectPage(java.lang.String headline,
                                 boolean addAtBottom)
                          throws RQLException
Erzeugt eine neue Seite basierend auf dem einzig zugelassen Template.

Parameters:
headline - Ueberschrift der neu erstellten Seite
addAtBottom - true=>seite wird nach unten verschoben, false=>seite wird nicht verschoben und RD default is oben anlegen
Throws:
AmbiguousTemplateException
RQLException

createAndConnectPage

public Page createAndConnectPage(Template template,
                                 java.lang.String headline)
                          throws RQLException
Erzeugt eine neue Seite basierend auf template an diesem Container. Die neue Seite wird per default unten angehängt. Die Templatevorbelegung wird dabei nicht geprueft!

Parameters:
template - Typ der neu erstellten Seite.
headline - Ueberschrift der neu erstellten Seite
Throws:
RQLException

createAndConnectPage

public Page createAndConnectPage(Template template,
                                 java.lang.String headline,
                                 boolean addAtBottom)
                          throws RQLException
Erzeugt eine neue Seite basierend auf template an diesem Container. Die Templatevorbelegung wird dabei nicht geprueft!

Parameters:
template - Typ der neu erstellten Seite.
headline - Ueberschrift der neu erstellten Seite
addAtBottom - true=>seite wird nach unten verschoben, false=>seite wird nicht verschoben und RD default is oben anlegen
Throws:
RQLException

createAndConnectPageBehind

public Page createAndConnectPageBehind(Template template,
                                       java.lang.String headline,
                                       Page positionChild)
                                throws RQLException
Erzeugt eine neue Seite basierend auf template an diesem MultiLink. Die Templatevorbelegung wird dabei nicht geprueft!

Parameters:
template - Typ der neu erstellten Seite.
headline - Ueberschrift der neu erstellten Seite
positionChild - the page after the new page will be created; has to be a child of this MultiLink!
Throws:
RQLException

disconnectAllChilds

public void disconnectAllChilds()
                         throws RQLException
Löst die Verlinkung aller Kindseiten von diesem Link.

Danach besitzt dieser Link keine Kindseiten mehr.

Throws:
RQLException

disconnectChild

public void disconnectChild(Page childPage)
                     throws RQLException
Löst die Verlinkung der gegebenen Kindseite von diesem Link.

Es findet keine Prüfung statt, ob die gegebenen Kindseite ein Child dieses MultiLinks ist.

Throws:
RQLException

disconnectChildByPageId

public void disconnectChildByPageId(java.lang.String pageId)
                             throws RQLException
Löst die Verlinkung der Kindseite mit der gegebenen PageId von diesem Link.

Es findet keine Prüfung statt, ob die gegebenen Kindseite ein Child dieses MultiLinks ist.

Throws:
RQLException

disconnectChilds

public void disconnectChilds(java.lang.String[] pageGuids)
                      throws RQLException
Löst die Verlinkung der Kindseiten von diesem Link.

Es findet keine Prüfung statt, ob die gegebenen Kindseite ein Child dieses MultiLinks ist. Solch falsche requests werden dann einfach irgnoriert.

Throws:
RQLException

equals

public boolean equals(java.lang.Object obj)
Gleiche CMS Links werden als identisch betrachtet.

Overrides:
equals in class java.lang.Object

findChildPageByHeadline

public Page findChildPageByHeadline(java.lang.String headline)
                             throws RQLException
Sucht in den Childseiten die Seite mit der gegebenen headline. Liefert null, falls keine Seite mit der gegebenen headline gefunden wurde.

Throws:
RQLException

getAllowedTemplateNames

public java.lang.String getAllowedTemplateNames(java.lang.String delimiter)
                                         throws RQLException
Liefert eine String-Liste mit allen hier anlinkbaren Template Namen.

Throws:
RQLException

isTemplateAllowed

public boolean isTemplateAllowed(Template template)
                          throws RQLException
Liefert true, falls das gegebenen Template an diesem MultiLink vorbelegt ist.

Throws:
RQLException

getAllowedTemplates

public java.util.List<Template> getAllowedTemplates()
                                             throws RQLException
Liefert eine Liste mit allen hier anlinkbaren Templates.

Throws:
RQLException

getChangeableChildPages

public PageArrayList getChangeableChildPages()
                                      throws RQLException
Liefert alle an diesen Multilink angehängten Seiten zurück, die für den angemeldeten User änderbar sind.

Returns:
PageArrayList list of Pages; Liste ist leer falls keine Seiten angehängt sind (oder auf einen anderen Link verwiesen wird)
Throws:
RQLException

getChangeableChildPagesSize

public int getChangeableChildPagesSize()
                                throws RQLException
Liefert die Anzahl aller an diesen Multilink angehängten Seiten zurück, die für den angemeldeten User änderbar sind.

Throws:
RQLException

getChildPage

public Page getChildPage()
                  throws RQLException
Liefert die einzige an diesen MultiLink angehängte Seite.

Throws:
RQLException

getFirstChildPage

public Page getFirstChildPage()
                       throws RQLException
Returns the first child page from this multi link or null, if less or more children are linked.

Throws:
RQLException

getChildPages

public PageArrayList getChildPages()
                            throws RQLException
Liefert alle an diesen Multilink angehängten Seiten zurück.

Returns:
PageArrayList list of Pages; Liste ist leer falls keine Seiten angehängt sind (oder auf einen anderen Link verwiesen wird)
Throws:
RQLException

getChildrenReversed

public PageArrayList getChildrenReversed()
                                  throws RQLException
Liefert alle an diesen Multilink angehängten Seiten in umgekehrter Reihenfolge zurück.

Returns:
PageArrayList list of Pages; Liste ist leer falls keine Seiten angehängt sind (oder auf einen anderen Link verwiesen wird)
Throws:
RQLException

getChildPagesForTemplate

public PageArrayList getChildPagesForTemplate(java.lang.String templateName)
                                       throws RQLException
Liefert alle an diesen Multilink angehängten Seiten zurück deren Template dem gegebenen entspricht.

Returns:
PageArrayList list of Pages; Liste kann leer sein
Throws:
RQLException

getChildPagesIterator

public java.util.Iterator getChildPagesIterator()
                                         throws RQLException
Liefert einen Iterator über die Liste aller an diesen Multilink angehängten Seiten zurück.

Throws:
RQLException

getChildPagesSize

public int getChildPagesSize()
                      throws RQLException
Liefert die Anzahl der an diesen Multilink angehängten Seiten zurück.

Throws:
RQLException

getChildPagesTemplateNames

public java.util.List<java.lang.String> getChildPagesTemplateNames()
                                                            throws RQLException
Liefert die Templatenamen aller an diesen Multilink angehängten Seiten zurück.

Throws:
RQLException

getChildPagesTemplateNames

public java.lang.String getChildPagesTemplateNames(java.lang.String namesSeparator)
                                            throws RQLException
Liefert die Templatenamen aller an diesen Multilink angehängten Seiten zurück.

Returns:
namesSeparator trennt die zurückgegebenen templatenamen
Throws:
RQLException

getCmsClient

public CmsClient getCmsClient()
Liefert den CmsClient.

Specified by:
getCmsClient in interface CmsClientContainer

getLinkGuid

public java.lang.String getLinkGuid()
Liefert die GUID dieses Links.

Returns:
java.lang.String

getLogonGuid

public java.lang.String getLogonGuid()
Liefert die RedDot logon GUID.

Specified by:
getLogonGuid in interface CmsClientContainer

getMainLinkChildPage

public Page getMainLinkChildPage()
                          throws RQLException
Liefert die an diesem Multilink über Hauptlink angehängte Seite zurück.

Returns:
Page null, falls keine Kind-Seiten vorhanden
Throws:
RQLException

getMultiLinksReferencingThisLink

public java.util.Iterator<MultiLink> getMultiLinksReferencingThisLink()
                                                               throws RQLException
Liefert einen Iterator für alle MultiLinks zurück, die auf diesen MultiLink verweisen. Das Ergebnis entspricht der RD Funktion show reference list für diesen MultiLink. Templateelemente, die ebenfalls diesen Multilink referenzieren werden nicht geliefert (fehlen bereits im RQL). Sie werden auch nicht durch die RD Funktion show reference list geliefert!

Throws:
RQLException

getName

public java.lang.String getName()
Liefert den Namen dieses MultiLinks in der Seite.

Returns:
java.lang.String

getNotAllowedChildPages

public PageArrayList getNotAllowedChildPages()
                                      throws RQLException
Liefert eine Liste von Kindseiten, deren Template an diesem MultiLink nicht vorbelegt sind.

Throws:
RQLException

getPage

public Page getPage()
Liefert die Seite, die diesen MultiLink beinhaltet.

Specified by:
getPage in interface PageContainer

getPageGuid

public java.lang.String getPageGuid()
Liefert die RedDot GUID der Seite.

Specified by:
getPageGuid in interface PageContainer

getProject

public Project getProject()
Liefert das Projekt.

Specified by:
getProject in interface ProjectContainer

getProjectGuid

public java.lang.String getProjectGuid()
                                throws RQLException
Liefert die RedDot GUID des Projekts.

Specified by:
getProjectGuid in interface ProjectContainer
Throws:
RQLException

getSessionKey

public java.lang.String getSessionKey()
Liefert den RedDot Session key.

Specified by:
getSessionKey in interface ProjectContainer

getTemplateElement

public TemplateElement getTemplateElement()
Liefert das Template-Element, auf dem dieser Link basiert.


getTemplateElementName

public java.lang.String getTemplateElementName()
Liefert den Namen des Template-Elements, auf dem dieser Link basiert.


getWorkflow

public Workflow getWorkflow()
                     throws RQLException
Liefert den an diesem Link angehängten Workflow, aber niemals den globalen. Liefert null, falls kein Workflow angehängt ist.

Throws:
RQLException

hasChildPages

public boolean hasChildPages()
                      throws RQLException
Liefert true, falls dieser MultiLink mindestens eine Kindseite besitzt.

Throws:
RQLException

hashCode

public int hashCode()
Gleiche CMS Links werden als identisch betrachtet.

Overrides:
hashCode in class java.lang.Object

isAtLeastOneChildMoveableToTarget

public boolean isAtLeastOneChildMoveableToTarget(Page targetPage,
                                                 boolean includeReferences)
                                          throws RQLException
Liefert true, falls es mindestens einen Link in targetPage gibt an den eine Kindseite diese Links verschoben werden kann, sonst false. Es werden die TemplateVorbelegungen dieses Links und der targetPage ausgewertet.

Parameters:
includeReferences - =true, auch TemplateElemente, die Referenzquelle sind werden geliefert (haben keine Childs!) =false, ohne TemplateElemente, die Referenzquelle sind (nur diese haben Childs!)
Throws:
RQLException

isChild

public boolean isChild(Page page)
                throws RQLException
Liefert true, falls die gegebene Seite ein Child dieses Links ist.

Throws:
RQLException

isConnectToExistingPageAllowed

public boolean isConnectToExistingPageAllowed(Page targetPage)
                                       throws RQLException
Liefert true, gdw das Template von targetPage an diesem MultiLink zugelassen ist.

Throws:
RQLException

isContainer

public boolean isContainer()
Liefert immer false. Nur die Subklasse Container liefert true.


isList

public boolean isList()
Liefert immer false. Nur die Subklasse List liefert true.


isManuallySorted

public boolean isManuallySorted()
                         throws RQLException
Liefert true genau dann, wenn dieser Multilink manuell sortiert werden kann.

Throws:
RQLException

isMultiLink

public boolean isMultiLink()
Liefert immer true, da alle Subklassen Links sind.


isReferenceSource

public boolean isReferenceSource()
Liefert true, falls dieser MultiLink einen anderen Link referenziert. Liefert true, falls dieser MultiLink im Baum als Referenz in grün dargestellt ist, und den Ziellink hinter >>> darstellt.


isTargetContainerAssigned

public boolean isTargetContainerAssigned()
Liefert immer false. Zur generischen Behandling von Liste und Container genutzt, obwohl sinnlos für einen Container.


moveAllChildsTo

public void moveAllChildsTo(MultiLink targetMultiLink)
                     throws RQLException
Verlinkt alle Kindseiten dieses Links an den gegebenen Ziellink und löst die Verlinkung von diesem Link.

Danach besitzt dieser Link keine Kindseiten mehr. Vorgabe ist: addAtBottom = true

Parameters:
targetMultiLink - Link, der alle Kindseiten bekommen soll
Throws:
RQLException

moveAllChildsTo

public void moveAllChildsTo(MultiLink targetMultiLink,
                            boolean addAtBottom)
                     throws RQLException
Verlinkt alle Kindseiten dieses Links an den gegebenen Ziellink und löst die Verlinkung von diesem Link.

Danach besitzt dieser Link keine Kindseiten mehr.

Parameters:
targetMultiLink - Link, der alle Kindseiten bekommen soll
addAtBottom - verschiebt jede child page an das Ende der Liste (nicht für automatisch sortierte verwendbar)
Throws:
RQLException

moveChildPage

public void moveChildPage(Page childPage,
                          MultiLink targetMultiLink)
                   throws RQLException
Verschiebt die gegebenen Kindseite von diesem Link zum targetMultiLink.

Parameters:
childPage - die zu verschiebene Kindseite
targetMultiLink - Link, der alle Kindseiten bekommen soll
Throws:
WrongSortModeException
RQLException

moveChildPage

public void moveChildPage(Page childPage,
                          MultiLink targetMultiLink,
                          boolean addAtBottom)
                   throws RQLException
Verschiebt die gegebenen Kindseite von diesem Link zum targetMultiLink.

Parameters:
childPage - die zu verschiebene Kindseite
targetMultiLink - Link, der alle Kindseiten bekommen soll
addAtBottom - true=>seite wird nach unten verschoben, false=>seite wird nicht verschoben und RD default is oben anlegen
Throws:
WrongSortModeException,NoChildException
RQLException

moveChildPageWithoutCheck

public void moveChildPageWithoutCheck(Page childPage,
                                      MultiLink targetMultiLink,
                                      boolean addAtBottom)
                               throws RQLException
Verschiebt die gegebenen Kindseite von diesem Link zum targetMultiLink.

Achtung: Keine Prüfung, ob die gegebene Seite Kindseite an dieser Liste ist.

Parameters:
childPage - die zu verschiebene Kindseite
targetMultiLink - Link, der alle Kindseiten bekommen soll
addAtBottom - true=>seite wird nach unten verschoben, false=>seite wird nicht verschoben und RD default is oben anlegen
Throws:
WrongSortModeException
RQLException

moveChildsTo

public void moveChildsTo(PageArrayList childsToMove,
                         MultiLink targetMultiLink)
                  throws RQLException
Verlinkt alle gegebenen Kindseiten dieses Links an den gegebenen Ziellink und löst die Verlinkung von diesem Link.

Die gegebenen Seiten müssen Kinder dieses Links sein.

Parameters:
targetMultiLink - Link, der alle Kindseiten bekommen soll
childsToMove - Liste mit den Kindseiten, die verschoben werden sollen
Throws:
RQLException

moveFirstPageToLastPosition

public void moveFirstPageToLastPosition()
                                 throws RQLException
Verschiebt die oberste Seite an diesem Multi-Link an die letzte Position. Dies korrigiert das Standardverhalten von RedDot, dass eine neue Seite immer oben (als Newsletter) erstellt wird.

Throws:
RQLException

movePagesHeadlineStartsWithToLastPosition

public void movePagesHeadlineStartsWithToLastPosition(java.lang.String prefix)
                                               throws RQLException
Verschiebt alle Seiten deren Überschrift mit dem gegebenen Prefix beginnen ans Ende dieser Liste.

Throws:
RQLException

moveLastPageToFirstPosition

public void moveLastPageToFirstPosition()
                                 throws RQLException
Verschiebt die unterste Seite an diesem Multi-Link auf die 1. Position.

Throws:
RQLException

movePageBehind

public void movePageBehind(Page childToMove,
                           Page positionChild)
                    throws RQLException
Verschiebt die gegebenen Seite childToMove an diesem Multi-Link hinter die Seite positionChild. ACHTUNG: Beide Seiten müssen Kinder an diesem MultiLink sein!

Throws:
RQLException

referenceTo

public void referenceTo(Anchor targetAnchor)
                 throws RQLException
Erstellt eine RD Referenz von diesem MultiLink (als Source) zu dem gegebenen target Anchor.

Throws:
RQLException

referenceTo

public void referenceTo(MultiLink targetMultiLink)
                 throws RQLException
Erstellt eine RD Referenz von diesem MultiLink (als Source) zu dem gegebenen target MultiLink.

ACHTUNG: Referenzen auf Links können zu Problemen bei der Generierung führen. Z.B. hlag.com Container referenziert Link, Seiten unter Worldwide Offices werden bei Generierung gar nicht betrachtet!

Throws:
RQLException

referenceTo

public void referenceTo(Page targetPage)
                 throws RQLException
Erstellt eine RD Referenz von diesem MultiLink (als Source) zu der gegebenen target Seite. Dieser MultiLink sollte sinnvollerweise ein Container sein!

Throws:
RQLException

setSortModeAllAscendingByHeadline

public void setSortModeAllAscendingByHeadline()
                                       throws RQLException
Ändert die Sortierungseinstellungen dieses MultiLinks. Es werden alle Seiten angezeigt und die Liste wird aufsteigend nach Headline der angelinkten Seiten geordnet.

Throws:
RQLException

setSortModeManually

public void setSortModeManually()
                         throws RQLException
Ändert die Sortierungseinstellungen dieses MultiLinks auf manuelle Sortierung.

Throws:
RQLException

sortChilds

public PageArrayList sortChilds(PageComparator comparator)
                         throws RQLException
Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen comparator.

Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChildsByDateAsc

public PageArrayList sortChildsByDateAsc(java.lang.String standardFieldDateTmpltElemName)
                                  throws RQLException
Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen Datumselement aufsteigend. Achtung! Alle Kindseiten müssen dieses Element besitzen.

Parameters:
standardFieldDateTmpltElemName - Name des Datumselements (muss in jeder Kindseite vorhanden sein)
Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChildsByDateDesc

public PageArrayList sortChildsByDateDesc(java.lang.String standardFieldDateTmpltElemName)
                                   throws RQLException
Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen Datumselement absteigend. Achtung! Alle Kindseiten müssen dieses Element besitzen.

Parameters:
standardFieldDateTmpltElemName - Name des Datumselements (muss in jeder Kindseite vorhanden sein)
Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChangeableChildrenByDateDesc

public PageArrayList sortChangeableChildrenByDateDesc(java.lang.String standardFieldDateTmpltElemName)
                                               throws RQLException
Sortiert alle änderbaren Kindseiten dieses MultiLinks nach dem gegebenen Datumselement absteigend.

Achtung! Alle Kindseiten müssen dieses Element besitzen.

Parameters:
standardFieldDateTmpltElemName - Name des Datumselements (muss in jeder Kindseite vorhanden sein)
Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChildsByDateDescAndHeadlineAsc

public PageArrayList sortChildsByDateDescAndHeadlineAsc(java.lang.String standardFieldDateTmpltElemName)
                                                 throws RQLException
Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen Datumselement absteigend und der Seitenüberschrift aufsteigend. Achtung! Alle Kindseiten müssen dieses Element besitzen.

Parameters:
standardFieldDateTmpltElemName - Name des Datumselements (muss in jeder Kindseite vorhanden sein)
Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChildsByHeadlineAsc

public PageArrayList sortChildsByHeadlineAsc()
                                      throws RQLException
Sortiert alle Kindseiten dieses MultiLinks aufsteigend nach Überschrift.

Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChildsByHeadlineDesc

public PageArrayList sortChildsByHeadlineDesc()
                                       throws RQLException
Sortiert alle Kindseiten dieses MultiLinks absteigend nach Überschrift.

Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChildsByIdAsc

public PageArrayList sortChildsByIdAsc()
                                throws RQLException
Sortiert alle Kindseiten dieses MultiLinks nach der Page ID aufsteigend.

Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChildsByIdDesc

public PageArrayList sortChildsByIdDesc()
                                 throws RQLException
Sortiert alle Kindseiten dieses MultiLinks nach der Page ID absteigend.

Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChildsByStandardFieldTextAsc

public PageArrayList sortChildsByStandardFieldTextAsc(java.lang.String standardFieldTextTmpltElemName)
                                               throws RQLException
Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen StandardFieldText Element aufsteigend. Achtung! Alle Kindseiten müssen dieses Element besitzen.

Parameters:
standardFieldTextTmpltElemName - Name des SFT Elements (muss in jeder Kindseite vorhanden sein)
Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

sortChildsByStandardFieldTextDesc

public PageArrayList sortChildsByStandardFieldTextDesc(java.lang.String standardFieldTextTmpltElemName)
                                                throws RQLException
Sortiert alle Kindseiten dieses MultiLinks nach dem gegebenen Standardfieldtext Element absteigend. Achtung! Alle Kindseiten müssen dieses Element besitzen.

Parameters:
standardFieldTextTmpltElemName - Name des SFT elements (muss in jeder Kindseite vorhanden sein)
Returns:
returns die sortierte Liste der Kindseiten
Throws:
RQLException

unlinkAuthorizationPackage

public void unlinkAuthorizationPackage(AuthorizationPackage authorizationPackage)
                                throws RQLException
Entfernt das gegebene Detailberechtigungspaket von diesem MultiLink.

Throws:
RQLException

unlinkWorkflow

public boolean unlinkWorkflow()
                       throws RQLException
Entfernt den angelinkten Workflow von diesem MultiLink. Liefert true zurück, wenn ein Workflow abgehängt wurde, false, falls dort keiner angehängt war.

Throws:
RQLException