com.hlcl.rql.as
Class PublicationSetting

java.lang.Object
  extended by com.hlcl.rql.as.PublicationSetting
All Implemented Interfaces:
CmsClientContainer, LanguageVariantContainer, ProjectContainer, ProjectVariantContainer, PublicationPackageContainer

public class PublicationSetting
extends java.lang.Object
implements PublicationPackageContainer, ProjectVariantContainer, LanguageVariantContainer

Diese Klasse beschreibt ein zugewiesenes Exportsetting eines Exportpaketes (Publication Combination).

Author:
LEJAFR

Constructor Summary
PublicationSetting(PublicationPackage publicationPackage, java.lang.String publicationSettingGuid, PublicationFolder publishedPagesPublicationFolder, java.lang.String projectVariantGuid, java.lang.String languageVariantGuid)
          Erzeugt eine Kombination des gegebenen Exportpakets.
 
Method Summary
 void addPublishingTo(PublishingTarget target)
          Fügt diesem Exportsetting das gegebene Exportziel target hinzu.
 RQLNode callCms(java.lang.String rqlRequest)
          Sendet 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 delete()
          Deletes this publication setting from the publication package.
 CmsClient getCmsClient()
          Liefert den CmsClient.
 java.util.List<PublishingTarget> getDirectoryPublishingTargets()
          Liefert alle zugeordneten Verzeichnis-Publizierungsziele für dieses Exportsetting.
 java.util.List<PublishingTarget> getFtpPublishingTargets()
          Liefert alle zugeordneten FTP und SFTP Exportziele für dieses Exportsetting.
 java.util.List<java.lang.String> getFtpPublishingTargetsPaths()
          Liefert für alle zugeordneten FTP Exportziele dieses Exportsettings den FTP path; immer ohne / am Ende.
 LanguageVariant getLanguageVariant()
          Liefert die Sprachvariante.
 java.lang.String getLanguageVariantGuid()
          Liefert die RedDot GUID der Sprachvariante.
 java.lang.String getLanguageVariantName()
          Liefert den Namen der Sprachvariante.
 java.lang.String getLogonGuid()
          Liefert die RedDot logon GUID.
 java.lang.String getName()
          Liefert den Namen dieses publication settings in der form: project variant name/language variant name.
 Project getProject()
          Liefert das Projekt.
 java.lang.String getProjectGuid()
          Liefert die RedDot GUID des Projekts.
 ProjectVariant getProjectVariant()
          Liefert die Projektvariante.
 java.lang.String getProjectVariantGuid()
          Liefert die RedDot GUID der Projektvariante.
 java.lang.String getProjectVariantName()
          Liefert den Namen der Projektvariante.
 java.lang.String getPublicationPackageGuid()
          Liefert die GUID des Exportpaketes, zu dem dieses Exportsetting gehört.
 java.lang.String getPublicationSettingGuid()
          Liefert die RedDot GUID dieser Exportsetting.
 PublicationFolder getPublishedPages()
          Liefert den PublicationFolder in den die Seiten (Published pages) für dieses Setting publiziert werden.
 java.util.List<PublishingTarget> getPublishingTargets()
          Liefert alle zugeordneten Exportziele für dieses Exportsetting, unabhängig vom Typ.
 java.lang.String getSessionKey()
          Liefert den RedDot Session key.
 boolean hasDirectoryPublishingTargets()
          Liefert true, falls an diesem Setting Verzeichnis-Publizierungsziele zugeordnet sind, sonst false.
 boolean hasFtpPublishingTargets()
          Liefert true, falls an diesem Setting FTP Publizierungsziele zugeordnet sind, sonst false.
 boolean hasPublishingTo(PublishingTarget find)
          Liefert true, falls diese Kombination auf das gegebene Target find publiziert, sonst false.
 boolean matches(java.lang.String projectVariantName, java.lang.String languageVariantName)
          Liefert true, falls dieses Setting der gegebenen Projekt- und Sprachvariante entspricht, sonst false.
 boolean pointsPublishedPagesIntoRoot()
          Liefert true, falls die publizierten Seiten für dieses Setting in die root generiert werden, sonst false.
 void removePublishingTo(PublishingTarget target)
          Entfernt das gegebene Exportziel target von diesem Exportsetting.
 boolean replacePublishingTarget(PublishingTarget from, PublishingTarget to)
          Ersetzt das gegebene Exportziel from (falls vorhanden) durch to an diesem Exportsetting.
 void setPublishedPages(PublicationFolder publicationFolder)
          Sets the publication folder for this setting to the given publication folder (one from the publication structure).
 PublicationSetting setPublishingTarget(PublishingTarget target)
          Setzt für dieses Exportsetting genau das gegebene Exportziel.
 java.lang.String toString()
          Show combination for easier debugging.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PublicationSetting

public PublicationSetting(PublicationPackage publicationPackage,
                          java.lang.String publicationSettingGuid,
                          PublicationFolder publishedPagesPublicationFolder,
                          java.lang.String projectVariantGuid,
                          java.lang.String languageVariantGuid)
                   throws RQLException
Erzeugt eine Kombination des gegebenen Exportpakets.

Kombinationen für (Draft) Projektvarianten werden nicht unterstützt!

Parameters:
publicationPackage - Exportpaket zu dem dieses Exportsetting gehört
publicationSettingGuid - GUID dieses Exportsettings
publishedPagesPublicationFolder - publication folder der publishing structure; =null signalisiert publishing into root
projectVariantGuid - GUID der Projektvariante dieses Exportsettings
languageVariantGuid - GUID der Sprachvariante dieses Exportsettings
Throws:
RQLException
Method Detail

addPublishingTo

public void addPublishingTo(PublishingTarget target)
                     throws RQLException
Fügt diesem Exportsetting das gegebene Exportziel target hinzu.

Throws:
RQLException

callCms

public RQLNode callCms(java.lang.String rqlRequest)
                throws RQLException
Sendet 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

delete

public void delete()
            throws RQLException
Deletes this publication setting from the publication package.

Throws:
RQLException

getCmsClient

public CmsClient getCmsClient()
Liefert den CmsClient.

Specified by:
getCmsClient in interface CmsClientContainer

getFtpPublishingTargets

public java.util.List<PublishingTarget> getFtpPublishingTargets()
                                                         throws RQLException
Liefert alle zugeordneten FTP und SFTP Exportziele für dieses Exportsetting.

Throws:
RQLException

hasPublishingTo

public boolean hasPublishingTo(PublishingTarget find)
                        throws RQLException
Liefert true, falls diese Kombination auf das gegebene Target find publiziert, sonst false.

Die Art des Publizierungszieles (directory, ftp) spielt dabei keine Rolle.

Throws:
RQLException

getDirectoryPublishingTargets

public java.util.List<PublishingTarget> getDirectoryPublishingTargets()
                                                               throws RQLException
Liefert alle zugeordneten Verzeichnis-Publizierungsziele für dieses Exportsetting.

Throws:
RQLException

getFtpPublishingTargetsPaths

public java.util.List<java.lang.String> getFtpPublishingTargetsPaths()
                                                              throws RQLException
Liefert für alle zugeordneten FTP Exportziele dieses Exportsettings den FTP path; immer ohne / am Ende.

An den publishing target path wird der published pages ordner aus diesen setting angehängt

Throws:
RQLException

getLanguageVariant

public LanguageVariant getLanguageVariant()
Liefert die Sprachvariante.

Specified by:
getLanguageVariant in interface LanguageVariantContainer

getLanguageVariantGuid

public java.lang.String getLanguageVariantGuid()
Liefert die RedDot GUID der Sprachvariante.

Specified by:
getLanguageVariantGuid in interface LanguageVariantContainer

getLanguageVariantName

public java.lang.String getLanguageVariantName()
Liefert den Namen der Sprachvariante.

Specified by:
getLanguageVariantName in interface LanguageVariantContainer

getLogonGuid

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

Specified by:
getLogonGuid in interface CmsClientContainer

getName

public java.lang.String getName()
Liefert den Namen dieses publication settings in der form: project variant name/language variant name.

Returns:
java.lang.String

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

getProjectVariant

public ProjectVariant getProjectVariant()
Liefert die Projektvariante.

Specified by:
getProjectVariant in interface ProjectVariantContainer

getProjectVariantGuid

public java.lang.String getProjectVariantGuid()
Liefert die RedDot GUID der Projektvariante.

Specified by:
getProjectVariantGuid in interface ProjectVariantContainer

getProjectVariantName

public java.lang.String getProjectVariantName()
Liefert den Namen der Projektvariante.

Specified by:
getProjectVariantName in interface ProjectVariantContainer

getPublicationPackageGuid

public java.lang.String getPublicationPackageGuid()
Liefert die GUID des Exportpaketes, zu dem dieses Exportsetting gehört.

Specified by:
getPublicationPackageGuid in interface PublicationPackageContainer

getPublicationSettingGuid

public java.lang.String getPublicationSettingGuid()
Liefert die RedDot GUID dieser Exportsetting.

Returns:
java.lang.String

getPublishedPages

public PublicationFolder getPublishedPages()
                                    throws RQLException
Liefert den PublicationFolder in den die Seiten (Published pages) für dieses Setting publiziert werden.

Liefert null, wenn dieses setting in die root publiziert. Check with pointsPublishedPagesIntoRoot().

Throws:
RQLException

getPublishingTargets

public java.util.List<PublishingTarget> getPublishingTargets()
                                                      throws RQLException
Liefert alle zugeordneten Exportziele für dieses Exportsetting, unabhängig vom Typ.

Throws:
RQLException

getSessionKey

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

Specified by:
getSessionKey in interface ProjectContainer

hasFtpPublishingTargets

public boolean hasFtpPublishingTargets()
                                throws RQLException
Liefert true, falls an diesem Setting FTP Publizierungsziele zugeordnet sind, sonst false.

Throws:
RQLException

hasDirectoryPublishingTargets

public boolean hasDirectoryPublishingTargets()
                                      throws RQLException
Liefert true, falls an diesem Setting Verzeichnis-Publizierungsziele zugeordnet sind, sonst false.

Throws:
RQLException

matches

public boolean matches(java.lang.String projectVariantName,
                       java.lang.String languageVariantName)
                throws RQLException
Liefert true, falls dieses Setting der gegebenen Projekt- und Sprachvariante entspricht, sonst false.

Testet mit equalsIgnoreCase().

Throws:
RQLException

pointsPublishedPagesIntoRoot

public boolean pointsPublishedPagesIntoRoot()
Liefert true, falls die publizierten Seiten für dieses Setting in die root generiert werden, sonst false.

See Also:
getPublishedPages()

removePublishingTo

public void removePublishingTo(PublishingTarget target)
                        throws RQLException
Entfernt das gegebene Exportziel target von diesem Exportsetting.

Throws:
RQLException

replacePublishingTarget

public boolean replacePublishingTarget(PublishingTarget from,
                                       PublishingTarget to)
                                throws RQLException
Ersetzt das gegebene Exportziel from (falls vorhanden) durch to an diesem Exportsetting.

Returns:
Liefert true, falls eine Ersetzung stattgefunden hat, sonst false. TODO prevent deleting the cache in publication package between remove and add
Throws:
RQLException

setPublishedPages

public void setPublishedPages(PublicationFolder publicationFolder)
                       throws RQLException
Sets the publication folder for this setting to the given publication folder (one from the publication structure).

Throws:
RQLException

setPublishingTarget

public PublicationSetting setPublishingTarget(PublishingTarget target)
                                       throws RQLException
Setzt für dieses Exportsetting genau das gegebene Exportziel. Gegebenenfalls gesetzte andere Exportziele werden dabei entfernt.

Parameters:
target - Exportziel
Throws:
RQLException

toString

public java.lang.String toString()
Show combination for easier debugging.

Overrides:
toString in class java.lang.Object