com.hlcl.rql.as
Class FileElement

java.lang.Object
  extended by com.hlcl.rql.as.Element
      extended by com.hlcl.rql.as.FileElement
All Implemented Interfaces:
CmsClientContainer, FolderContainer, PageContainer, ProjectContainer
Direct Known Subclasses:
ImageElement, MediaElement

public abstract class FileElement
extends Element
implements FolderContainer

Diese Klasse beschreibt ein File-Element (Media oder Image) einer Seite.

Author:
LEJAFR

Constructor Summary
FileElement(Page page, TemplateElement templateElement, java.lang.String name, java.lang.String elementGuid, java.lang.String value, java.lang.String folderGuid)
          FileElement constructor comment.
 
Method Summary
 void downloadToFile(java.io.File targetFile)
          Lädt für dieses FileElement die Datei aus dem RD ImageCache und speichert sie in der gegebenen Datei targetFile ab.
 void downloadToFile(java.lang.String targetPathName)
          Lädt für dieses FileElement die Datei aus dem RD ImageCache und speichert sie unter dem gegebenen Pfad ab.
 java.net.URL getDownloadUrl()
          Liefert die download URL vom RD server.
 java.lang.String getDownloadUrlString()
          Liefert die download URL als String dieses File-Elements.
 java.lang.String getExtender(java.lang.String filename)
          Liefert den Extender (immer lowercase) des gegebenen Files zurück.
 java.lang.String getFilename()
          Liefert den Dateinamen dieses Files oder null, falls dieses Element kein Dateinamen besitzt und auch kein Defaultwert im Templateelement definiert ist.
 java.lang.String getFilenameExtender()
          Liefert den Extender (immer lowercase) dieses MediaElements zurück.
 java.lang.String getFilenameWithoutExtender()
          Liefert nur den Dateinamen dieses Files; ohne Extender.
 Folder getFolder()
          Liefert den Folder dieses Dateielements.
 java.lang.String getFolderGuid()
          Liefert die RedDot GUID des Folders, aus dem das File kommt.
 Folder getTemplateElementFolder()
          Liefert den im Template-Element eingestellten Folder für dieses FileElement.
 boolean hasFile()
          Liefert true, falls dieses file element eine Datei hat, sonst false;
 boolean isCombinedUpdateSupported()
          Liefert false, da alle FileElemente die gemeinsame Änderung mit nur einem RQL nicht unterstützen.
 void setFilename(java.lang.String filename)
          Aendert den Namen des zugewiesenen Files.
 void setFilename(java.lang.String filename, AssetManagerSubFolder subFolder)
          Aendert den Namen des zugewiesenen Files aus einem AssetManager-Unterordner.
 void setFilename(java.lang.String filename, java.lang.String subFolderName)
          Aendert den Namen des zugewiesenen Files aus einem AssetManager-Unterordner.
 void setFilenameWithoutCheck(java.lang.String filename)
          Aendert den Namen des zugewiesenen Files.
 void updateFolderChange()
          Schreibt den aktuellen Bildnamen dieses Dateielements neu und aktualisiert dabei den neuen templatefolder in diesem Element.
 
Methods inherited from class com.hlcl.rql.as.Element
callCms, callCmsWithoutParsing, deleteValue, getCmsClient, getElementGuid, getLogonGuid, getName, getPage, getPageGuid, getProject, getProjectGuid, getSessionKey, getTemplateElement, hasTemplateDefaultValue, isEmpty, isValueEntered
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.hlcl.rql.as.ProjectContainer
getProject, getProjectGuid, getSessionKey
 
Methods inherited from interface com.hlcl.rql.as.CmsClientContainer
callCms, callCmsWithoutParsing, getCmsClient, getLogonGuid
 

Constructor Detail

FileElement

public FileElement(Page page,
                   TemplateElement templateElement,
                   java.lang.String name,
                   java.lang.String elementGuid,
                   java.lang.String value,
                   java.lang.String folderGuid)
FileElement constructor comment.

Parameters:
page - Seite, die diesen Container Link beinhaltet.
templateElement - TemplateElement auf dem dieses Element basiert
name - Name des Elements
elementGuid - GUID dieses Elements
value - Dateiname des Files
Method Detail

getDownloadUrl

public java.net.URL getDownloadUrl()
                            throws RQLException
Liefert die download URL vom RD server.

Throws:
RQLException

getDownloadUrlString

public java.lang.String getDownloadUrlString()
                                      throws RQLException
Liefert die download URL als String dieses File-Elements.

Throws:
RQLException

getExtender

public java.lang.String getExtender(java.lang.String filename)
Liefert den Extender (immer lowercase) des gegebenen Files zurück.


getFilenameExtender

public java.lang.String getFilenameExtender()
                                     throws RQLException
Liefert den Extender (immer lowercase) dieses MediaElements zurück.

Liefert null, fall keine Datei gesetzt ist.

Throws:
RQLException

getFilename

public java.lang.String getFilename()
                             throws RQLException
Liefert den Dateinamen dieses Files oder null, falls dieses Element kein Dateinamen besitzt und auch kein Defaultwert im Templateelement definiert ist.

Returns:
String
Throws:
RQLException

getFilenameWithoutExtender

public java.lang.String getFilenameWithoutExtender()
                                            throws RQLException
Liefert nur den Dateinamen dieses Files; ohne Extender. Liefert null, falls kein '.' im Dateinamen gefunden werden konnte oder kein Dateiname gesetzt ist.

Throws:
RQLException

getFolder

public Folder getFolder()
                 throws RQLException
Liefert den Folder dieses Dateielements.

Ist ein file gesetzt wird der Ordner oder auch AssetManager-Unterordner geliefert, aus dem das file zugewiesen wurde.

Ist kein file gesetzt wird der default Ordner aus dem template element geliefert.

Specified by:
getFolder in interface FolderContainer
Throws:
RQLException

getFolderGuid

public java.lang.String getFolderGuid()
Liefert die RedDot GUID des Folders, aus dem das File kommt. Kann sowohl ein AssetManager Ordner oder auch ein Unterordner sein.

Specified by:
getFolderGuid in interface FolderContainer

getTemplateElementFolder

public Folder getTemplateElementFolder()
                                throws RQLException
Liefert den im Template-Element eingestellten Folder für dieses FileElement.

Throws:
RQLException

hasFile

public boolean hasFile()
                throws RQLException
Liefert true, falls dieses file element eine Datei hat, sonst false;

Throws:
RQLException

isCombinedUpdateSupported

public boolean isCombinedUpdateSupported()
                                  throws RQLException
Liefert false, da alle FileElemente die gemeinsame Änderung mit nur einem RQL nicht unterstützen.

Overrides:
isCombinedUpdateSupported in class Element
Throws:
RQLException
See Also:
Page.setElementValues(Map)

setFilename

public void setFilename(java.lang.String filename)
                 throws RQLException
Aendert den Namen des zugewiesenen Files. Es wird geprüft, ob das File im Templateordner existiert.

Throws:
MissingFileException
RQLException
See Also:
setFilename(String, AssetManagerSubFolder)

setFilename

public void setFilename(java.lang.String filename,
                        AssetManagerSubFolder subFolder)
                 throws RQLException
Aendert den Namen des zugewiesenen Files aus einem AssetManager-Unterordner. Es wird geprüft, ob das File im gegebenen Unterordner existiert.

Throws:
MissingFileException
WrongTypeException
RQLException
See Also:
setFilename(String), setFilename(String, String)

setFilename

public void setFilename(java.lang.String filename,
                        java.lang.String subFolderName)
                 throws RQLException
Aendert den Namen des zugewiesenen Files aus einem AssetManager-Unterordner. Es wird geprüft, ob das File im gegebenen Unterordner existiert.

Throws:
MissingFileException
WrongTypeException
RQLException
See Also:
setFilename(String, AssetManagerSubFolder), setFilename(String)

setFilenameWithoutCheck

public void setFilenameWithoutCheck(java.lang.String filename)
                             throws RQLException
Aendert den Namen des zugewiesenen Files. Es wird NICHT geprüft, ob das File im Templateornder existiert, um die Performance zu steigern.

Throws:
MissingFileException
RQLException
See Also:
setFilename(String)

downloadToFile

public void downloadToFile(java.io.File targetFile)
                    throws RQLException
Lädt für dieses FileElement die Datei aus dem RD ImageCache und speichert sie in der gegebenen Datei targetFile ab.

Achtung: Die Extender sollten zueinander passen! Sie werden hierbei nicht geprüft.

Throws:
RQLException

downloadToFile

public void downloadToFile(java.lang.String targetPathName)
                    throws RQLException
Lädt für dieses FileElement die Datei aus dem RD ImageCache und speichert sie unter dem gegebenen Pfad ab.

Achtung: Die Extender sollten zueinander passen! Sie werden hierbei nicht geprüft.

Throws:
RQLException

updateFolderChange

public void updateFolderChange()
                        throws RQLException
Schreibt den aktuellen Bildnamen dieses Dateielements neu und aktualisiert dabei den neuen templatefolder in diesem Element.

Throws:
RQLException