Class AlbumBean

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.lang.Cloneable, AlbumEngine

    public class AlbumBean
    extends java.lang.Object
    implements java.awt.image.ImageObserver, AlbumEngine, java.lang.Cloneable
    JavaBean for creating web based photo albums with thumbnail page and slide pages. Provides the actual album generation functionality of JAlbum. Method comments have only been added where the use isn't obvious.
    • Field Detail

      • compile

        public boolean compile
      • PRODUCT_DISPLAY_VERSION

        public static final java.lang.String PRODUCT_DISPLAY_VERSION
        See Also:
        Constant Field Values
      • PRODUCT_INTERNAL_VERSION

        public static final java.lang.String PRODUCT_INTERNAL_VERSION
        See Also:
        Constant Field Values
      • HEADLESS_SETTINGS_NAME

        public static final java.lang.String HEADLESS_SETTINGS_NAME
        See Also:
        Constant Field Values
      • ORDER_BY_ADDED_DATE

        public static final java.lang.String ORDER_BY_ADDED_DATE
        See Also:
        Constant Field Values
      • ORDER_BY_CAMERA_DATE

        public static final java.lang.String ORDER_BY_CAMERA_DATE
        See Also:
        Constant Field Values
      • ORDER_BY_SIMPLE_NAME

        public static final java.lang.String ORDER_BY_SIMPLE_NAME
        See Also:
        Constant Field Values
      • LINK_ORIGINALS_VIA_SCALED

        public static final java.lang.String LINK_ORIGINALS_VIA_SCALED
        See Also:
        Constant Field Values
      • application

        protected static final java.util.Map application
      • evalStats

        public java.util.HashMap evalStats
      • indexAST

        public AST indexAST
      • slideAST

        public AST slideAST
      • skinDir

        public java.io.File skinDir
      • srcResDir

        public java.io.File srcResDir
    • Constructor Detail

      • AlbumBean

        public AlbumBean()
    • Method Detail

      • setOnMakeStarted

        public void setOnMakeStarted​(java.lang.Runnable onMakeStarted)
      • getAlbumHeight

        public int getAlbumHeight()
      • setAlbumHeight

        public void setAlbumHeight​(int albumHeight)
      • getAlbumWidth

        public int getAlbumWidth()
      • setAlbumWidth

        public void setAlbumWidth​(int albumWidth)
      • isMakeThumbs

        public boolean isMakeThumbs()
      • setMakeThumbs

        public void setMakeThumbs​(boolean makeThumbs)
      • getThemeImageProcessor

        public ThemeImageProcessor getThemeImageProcessor()
        Returns:
        Currently installed theme image processor or null
        Since:
        15
      • setThemeImageProcessor

        public void setThemeImageProcessor​(ThemeImageProcessor themeImageProcessor)
        Control whether jAlbum should generate folder specific theme images. Cleared at the start of each album build (before init). Skins wanting theme images generated can pass new ThemeImageProcessor(engine) as argument
        Since:
        15
      • getProjectFile

        public java.io.File getProjectFile()
      • setProjectFile

        public void setProjectFile​(java.io.File projectFile)
      • getCreator

        public java.lang.String getCreator()
      • setCreator

        public void setCreator​(java.lang.String creator)
      • getRights

        public java.lang.String getRights()
      • setRights

        public void setRights​(java.lang.String rights)
      • getRightsURL

        public java.lang.String getRightsURL()
      • setRightsURL

        public void setRightsURL​(java.lang.String rightsURL)
      • isOverrideExistingCopyright

        public boolean isOverrideExistingCopyright()
      • setOverrideExistingCopyright

        public void setOverrideExistingCopyright​(boolean overrideExistingCopyright)
      • getPageNamer

        public PageNamer getPageNamer()
        Returns:
        the currently installed PageNamer
      • setPageNamer

        public void setPageNamer​(PageNamer pageNamer)
        Allows skins with special naming requirements to control how index pages and slide pages are named
        Parameters:
        pageNamer -
      • getFileNamer

        public FileNamer getFileNamer()
        Returns:
        the currently installed FileNamer
      • setFileNamer

        public void setFileNamer​(FileNamer fileNamer)
        Allows skins with special naming requirements to control how files are named
        Since:
        10.3
      • getDisplayVersion

        public static java.lang.String getDisplayVersion()
      • getInternalVersion

        public static java.lang.String getInternalVersion()
      • finalize

        protected void finalize()
                         throws java.lang.Throwable
        Overrides:
        finalize in class java.lang.Object
        Throws:
        java.lang.Throwable
      • getSkinProperties

        public SkinProperties getSkinProperties()
        Since:
        8.7
      • getChainedObjects

        public ChainedObjects getChainedObjects()
        Since:
        12.2
      • getRawParam

        public net.jalbum.jlibraw.RAWImageReadParam getRawParam()
        Get default RAW image read parameters used for controlling RAW processing
        Returns:
        Since:
        13.1
      • setRawParam

        public void setRawParam​(net.jalbum.jlibraw.RAWImageReadParam rawParam)
        Set default RAW image read parameters used for controlling RAW processing
        Since:
        13.1
      • unloadCurrentSkin

        public void unloadCurrentSkin()
                               throws java.io.IOException
        Experimental. Don't call
        Throws:
        java.io.IOException
      • clone

        public AlbumBean clone()
        Make a shallow copy of this object Note: It is not guaranteed that all member variables are separate or copied, just simple properties
        Overrides:
        clone in class java.lang.Object
        Returns:
        Since:
        8.4
      • setImageProcessor

        public void setImageProcessor​(ImageProcessor processor)
      • setDirectory

        public void setDirectory​(java.lang.String newDirectory)
        Set image directory. Mandatory to call before calling makeAlbum() Fires directory PropertyChangeEvent since 8.4
        Specified by:
        setDirectory in interface AlbumEngine
        Parameters:
        newDirectory -
      • getDirectory

        public java.lang.String getDirectory()
        Specified by:
        getDirectory in interface AlbumEngine
        Returns:
      • getThumbSize

        public java.lang.String getThumbSize()
      • getImageSize

        public java.lang.String getImageSize()
      • getThemeImageDim

        public java.awt.Dimension getThemeImageDim()
        Get dimension of theme image
        Returns:
        Theme image dimension or null if no theme image used
        Since:
        15
      • setThemeImageDim

        public void setThemeImageDim​(java.awt.Dimension themeImageDim)
        Set dimension of theme image
        Parameters:
        themeImageDim - Dimension or null if no theme image to be used
        Since:
        15
      • setThemeImageSize

        public void setThemeImageSize​(java.lang.String themeImageSize)
        Parameters:
        themeImageSize -
        Since:
        16
      • getThemeImageSize

        public java.lang.String getThemeImageSize()
        Returns:
        Since:
        16
      • getImageDim

        public java.awt.Dimension getImageDim()
        Returns:
        Image bounds as a Dimension
        Since:
        13.8
      • getThumbDim

        public java.awt.Dimension getThumbDim()
        Returns:
        Thumbnail bounds as a Dimension
        Since:
        13.8
      • setCols

        public void setCols​(int newCols)
      • getCols

        public int getCols()
      • setQualityPercent

        public void setQualityPercent​(int newQualityPercent)
      • getQualityPercent

        public int getQualityPercent()
      • isHiDPIThumbs

        public boolean isHiDPIThumbs()
        Tell whether thumbnails are generated for HiDPI screens (i.e. being delivered twice the size as their stated thumbWidth and thumbHeight dimensions)
        Returns:
        whether HiDPI thumbnails are used or not
        Since:
        13.7
      • setHiDPIThumbs

        public void setHiDPIThumbs​(boolean hiDPI)
        Set whether thumbnails are generated for HiDPI screens (i.e. being delivered twice the size as their stated thumbWidth and thumbHeight dimensions)
        Since:
        13.7
      • getImageScale

        public int getImageScale()
        Returns:
        Number of pixels per dot (1/72") (1 for ordinary images, 2 for HiDPI images)
        Since:
        13.7
      • getScaleForStage

        public int getScaleForStage​(int stage)
      • getThumbScale

        public int getThumbScale()
        Returns:
        Number of pixels per dot (1/72") (1 for ordinary images, 2 for HiDPI images)
        Since:
        13.7
      • setSharpenPercent

        public void setSharpenPercent​(int newSharpenPercent)
      • getSharpenPercent

        public int getSharpenPercent()
      • isDisableColorSubsampling

        public boolean isDisableColorSubsampling()
      • setDisableColorSubsampling

        public void setDisableColorSubsampling​(boolean disableColorSubsampling)
        Disable chroma/color subsampling. Applies to images written with 90% or higher compression quality
        Parameters:
        disableColorSubsampling -
        Since:
        16.3
      • isHiDPIImages

        public boolean isHiDPIImages()
        Tell whether closeup images are generated for HiDPI screens (i.e. being delivered twice the size as their stated thumbWidth and thumbHeight dimensions)
        Returns:
        whether HiDPI closeup images are used or not
        Since:
        13.7
      • setHiDPIImages

        public void setHiDPIImages​(boolean hiDPI)
        Set whether closeup images are generated for HiDPI screens (i.e. being delivered twice the size as their stated thumbWidth and thumbHeight dimensions)
        Since:
        13.7
      • useScaledImagesAsOriginals

        public void useScaledImagesAsOriginals​(boolean use)
        Internal use only. Don't call
      • setClassicReaders

        public void setClassicReaders​(boolean newClassicReaders)
        Use Sun's old, but faster image readers for JPEG, GIF and PNG file types instead of ImageIO readers
      • isClassicReaders

        public boolean isClassicReaders()
      • setUseThumbForFolderIcon

        public void setUseThumbForFolderIcon​(boolean newUseThumbForFolderIcon)
        Replace standard folder icon with a thumbnail from one of the files in the image directory
        Since:
        v6.1
      • isUseThumbForFolderIcon

        public boolean isUseThumbForFolderIcon()
      • setCpuCores

        public void setCpuCores​(int cpuCores)
        Machines with multiple CPUs can utilize this method to cut down processing time Values higher than number of available processors are ignored. Renamed from setNThreads in order to ignore previously set conservative setting in jAlbum preferences.
      • getCpuCores

        public int getCpuCores()
        Renamed from getNThreads in order to default to max number of cpu cores and ignore previously conservative settings store in jAlbum preferences now that our image scaling is far more memory conservative
        Returns:
      • setSlides

        public void setSlides​(boolean newSlides)
      • isSlides

        public boolean isSlides()
      • setDateFormat

        public void setDateFormat​(java.lang.String newDateFormat)
      • getDateFormat

        public java.lang.String getDateFormat()
      • getDateFormatAsObject

        public java.text.DateFormat getDateFormatAsObject()
      • getImageBackgroundColor

        public java.awt.Color getImageBackgroundColor()
        jAlbum will use the background color when generating JPEG images from translusent images
        Since:
        8.3.4
      • setImageBackgroundColor

        public void setImageBackgroundColor​(java.awt.Color backgroundColor)
        jAlbum will use the background color when generating JPEG images from translucent images
        Since:
        8.3.4
      • processTemplateFile

        public void processTemplateFile​(java.io.File source,
                                        java.io.File dest)
                                 throws java.io.IOException,
                                        ElementException,
                                        javax.script.ScriptException
        Replace variables and perform template parsing as a file is being copied. Use the variables that are currently visible for the interpreter.
        Throws:
        java.io.IOException
        ElementException
        javax.script.ScriptException
        Since:
        4.7
      • getASTCache

        public AlbumBean.ASTCache getASTCache()
        Internal use only
        Returns:
        Since:
        17.1
      • processTemplate

        public java.lang.String processTemplate​(java.lang.String s)
                                         throws ElementException,
                                                javax.script.ScriptException
        Replace variables and perform template parsing Use the variables that are currently visible for the interpreter.
        Throws:
        ElementException
        javax.script.ScriptException
        Since:
        6.1
      • processSection

        public java.lang.String processSection​(Section sec,
                                               Scope vars)
                                        throws ElementException,
                                               javax.script.ScriptException
        Replace variables and perform template parsing using the passed variables.
        Parameters:
        sec - Section to process
        vars - Variables to process
        Throws:
        ElementException
        javax.script.ScriptException
        Since:
        14
      • processSection

        public java.lang.String processSection​(Section sec,
                                               java.util.Map<java.lang.String,​java.lang.Object> vars)
                                        throws ElementException,
                                               javax.script.ScriptException
        Throws:
        ElementException
        javax.script.ScriptException
      • processTemplateFile

        public void processTemplateFile​(java.io.File source,
                                        java.io.File dest,
                                        java.util.Map vars)
                                 throws java.io.IOException,
                                        ElementException,
                                        javax.script.ScriptException
        Replace variables and perform template parsing as a file is being copied Warning: This method has side effects of affecting the variables available in the current scope. Try using the version that doesn't take a Map as parameter
        Throws:
        java.io.IOException
        ElementException
        javax.script.ScriptException
      • listFiles

        @Deprecated
        public java.io.File[] listFiles​(java.io.File dir,
                                        boolean includeDirs,
                                        java.io.File outputDir)
                                 throws java.io.IOException
        Deprecated.
        Use the new AlbumObject object model instead (currentObject, currentFolder and rootFolder variables). Doesn't support renamed files
        List valid albumfiles and subdirectories of a directory. The list is NO LONGER ordered according to the project settings
        Parameters:
        includeDirs - Include directories?
        outputDir - Output directory or null if not include directories
        Throws:
        java.io.IOException
      • addGlobals

        public void addGlobals​(java.util.Map vars)
      • registerVariables

        public void registerVariables​(java.io.File file,
                                      java.io.File outputDir)
                               throws java.io.IOException,
                                      javax.script.ScriptException
        We store a Map of file->Map pairs where the Map contains metadata like imageWidth, imageHeight and EXIF data (if present)
        Throws:
        java.io.IOException
        javax.script.ScriptException
      • processScript

        public void processScript​(java.io.File f)
                           throws java.io.IOException,
                                  javax.script.ScriptException
        Process BeanShell or JavaScript files
        Throws:
        java.io.IOException
        javax.script.ScriptException
      • processScript

        public void processScript​(java.io.File f,
                                  javax.script.Bindings vars)
                           throws java.io.IOException,
                                  javax.script.ScriptException
        Process BeanShell or JavaScript files
        Throws:
        java.io.IOException
        javax.script.ScriptException
      • processBeanShellFile

        @Deprecated
        public void processBeanShellFile​(java.io.File f)
                                  throws ElementException,
                                         java.io.IOException
        Deprecated.
        Use processScript(File) instead
        Throws:
        ElementException
        java.io.IOException
      • countFiles

        @Deprecated
        public int countFiles​(java.io.File dir)
                       throws java.io.IOException
        Deprecated.
        Use JAlbumUtilities.countCategories instead for speed (less disk access) and flexibility
        Recursively figure out how many files to process in total v3.5 made public as a convenience
        Throws:
        java.io.IOException
      • isDirty

        public boolean isDirty()
        Tell if settings have changed since last album build
        Returns:
        Since:
        v12
      • isMakingAlbum

        public boolean isMakingAlbum()
        Returns:
        Since:
        v12
      • imageUpdate

        public boolean imageUpdate​(java.awt.Image img,
                                   int infoflags,
                                   int x,
                                   int y,
                                   int width,
                                   int height)
        Ignore. Will be moved out of AlbumBean Implements ImageObserver
        Specified by:
        imageUpdate in interface java.awt.image.ImageObserver
      • getWidgetInjectionCode

        public java.lang.String getWidgetInjectionCode​(java.lang.String pageType,
                                                       java.lang.String rootPath)
      • getTargetName

        public java.lang.String getTargetName​(java.lang.String name)
        Figure out what should be the final file name Maps most file types to jpg but png and gif to png
        Parameters:
        name -
        Returns:
      • getScaledDim

        public static java.awt.Dimension getScaledDim​(java.awt.Dimension dim,
                                                      int scale)
      • addPropertyChangeListener

        public void addPropertyChangeListener​(java.beans.PropertyChangeListener listener)
      • removePropertyChangeListener

        public void removePropertyChangeListener​(java.beans.PropertyChangeListener listener)
        Removes a PropertyChangeListener from the listener list. This method should be used to remove PropertyChangeListeners that were registered for all bound properties of this class.

        If listener is null, no exception is thrown and no action is performed.

        Parameters:
        listener - the PropertyChangeListener to be removed
        See Also:
        addPropertyChangeListener(java.beans.PropertyChangeListener)
      • addPropertyChangeListener

        public void addPropertyChangeListener​(java.lang.String propertyName,
                                              java.beans.PropertyChangeListener listener)
      • firePropertyChange

        protected void firePropertyChange​(java.lang.String propertyName,
                                          java.lang.Object oldValue,
                                          java.lang.Object newValue)
        Support for reporting bound property changes for Object properties. This method can be called when a bound property has changed and it will send the appropriate PropertyChangeEvent to any registered PropertyChangeListeners.
        Parameters:
        propertyName - the property whose value has changed
        oldValue - the property's previous value
        newValue - the property's new value
      • addFilter

        public void addFilter​(JAFilter filter)
        Add an image filter to the image process chain so it affects both closeups and thumbnails
      • filterIterator

        public java.util.Iterator<JAFilter> filterIterator​(int stage)
      • addFilter

        public boolean addFilter​(JAFilter filter,
                                 int stage)
        Add an image filter to the image process chain at the specified stage
      • removeFilter

        public boolean removeFilter​(JAFilter filter,
                                    int stage)
        Remove an image filter from the image process chain at the specified stage
      • removeAllFilters

        public void removeAllFilters()
        Remove all image filters from the image process chain
      • fireFolderProcessingStarted

        protected void fireFolderProcessingStarted​(AlbumObject folder)
      • fireFolderProcessingFinished

        protected void fireFolderProcessingFinished​(AlbumObject folder)
      • fireImageProcessingStarted

        protected void fireImageProcessingStarted​(AlbumBeanEvent e)
      • fireImageProcessingFinished

        protected void fireImageProcessingFinished​(AlbumBeanEvent e)
      • fireErrorOccured

        protected void fireErrorOccured​(java.lang.Throwable t,
                                        java.io.File f)
      • setSubdirs

        public void setSubdirs​(boolean newSubdirs)
      • isSubdirs

        public boolean isSubdirs()
      • setAppendImages

        public void setAppendImages​(boolean newAppendImages)
        Control if all image files are to be rescaled or only new files. Setting appendImages to true corresponds to "Make changes" Setting appendImages to false corresponds to "Make all" button.
        Specified by:
        setAppendImages in interface AlbumEngine
      • setUpdatedDirsOnly

        public void setUpdatedDirsOnly​(boolean newUpdatedDirsOnly)
      • isUpdatedDirsOnly

        public boolean isUpdatedDirsOnly()
      • setExcludeByDefault

        public void setExcludeByDefault​(boolean newExcludeByDefault)
        Automatically exclude images recently added to the image directory
        Since:
        6.3
      • isExcludeByDefault

        public boolean isExcludeByDefault()
      • setKeepMetaData

        public void setKeepMetaData​(boolean newKeepMetaData)
        Keep camera metadata in generated files
        Since:
        6.5
      • isKeepMetaData

        public boolean isKeepMetaData()
      • setKeepXmpData

        public void setKeepXmpData​(boolean newKeepXmpData)
        Keep xmp metadata in generated files
        Since:
        10.8
      • isKeepXmpData

        public boolean isKeepXmpData()
      • getHomepageAddress

        public java.lang.String getHomepageAddress()
        Since:
        10.8
      • setHomepageAddress

        public void setHomepageAddress​(java.lang.String homepageAddress)
        Since:
        10.8
      • getHomepageLinkText

        public java.lang.String getHomepageLinkText()
        Since:
        10.8
      • setHomepageLinkText

        public void setHomepageLinkText​(java.lang.String homepageLinkText)
        Since:
        10.8
      • setStyle

        public void setStyle​(java.lang.String newStyle)
        Specified by:
        setStyle in interface AlbumEngine
      • getStyle

        public java.lang.String getStyle()
        Specified by:
        getStyle in interface AlbumEngine
      • setIndexPageName

        public void setIndexPageName​(java.lang.String newIndexPageName)
      • getIndexPageName

        public java.lang.String getIndexPageName()
      • isUrlEncode

        public boolean isUrlEncode()
      • setUrlEncode

        public void setUrlEncode​(boolean b)
        Deprecated.
        Ignored from v17.2. URL encoding is now always on
        Parameters:
        b -
      • setImageOrdering

        public void setImageOrdering​(java.lang.String newImageOrdering)
        Set image ordering to one of the ORDER_ string constants defined in this class Will cancel any custom image ordering set by the setCustomImageOrdering call
      • getImageOrdering

        public java.lang.String getImageOrdering()
      • setCustomImageOrdering

        public void setCustomImageOrdering​(java.util.Comparator fileComparator)
        Select custom image/file ordering by installing a custom Comparator object. It is recommended that this method is called from the init.bsh file of a skin as the JAlbum user interface automatically resets this setting at the start of each album generation, before calling init.bsh. The resetting is done when the ordinary setImageOrdering method is called as the engine is synchronized with the UI.
        Parameters:
        fileComparator - Comparator object that is passed two File objects
      • getCustomImageOrdering

        public java.util.Comparator getCustomImageOrdering()
      • setMediaRSS

        public void setMediaRSS​(boolean newMediaRSS)
        Add media RSS support to published albums
        Parameters:
        newMediaRSS - boolean
      • isMediaRSS

        public boolean isMediaRSS()
      • isGenerateJSON

        public boolean isGenerateJSON()
        Since:
        15.4 Tell whether JSON formatted metadata should be added to album
      • setGenerateJSON

        public void setGenerateJSON​(boolean generateJSON)
        Tell whether JSON formatted metadata should be added to album
        Parameters:
        generateJSON -
        Since:
        15.4
      • getNotes

        public java.lang.String getNotes()
        Returns:
        Project notes (notes to user of project. Not shown in album)
        Since:
        16
      • setNotes

        public void setNotes​(java.lang.String notes)
        Set pProject notes (notes to user of project. Not shown in album)
        Parameters:
        notes -
        Since:
        16
      • isNotifyNotes

        public boolean isNotifyNotes()
      • setNotifyNotes

        public void setNotifyNotes​(boolean notifyNotes)
      • setWidgetInjection

        public void setWidgetInjection​(boolean newWidgetInjection)
        Include widget injection to published albums
        Parameters:
        newWidgetInjection -
      • isWidgetInjection

        public boolean isWidgetInjection()
      • setExcludeBacklinks

        public void setExcludeBacklinks​(boolean newExcludeBacklinks)
        Since:
        8.7
      • isExcludeBacklinks

        public boolean isExcludeBacklinks()
      • getUserName

        public java.lang.String getUserName()
      • setUserName

        public void setUserName​(java.lang.String userName)
      • setMetaData

        public void setMetaData​(boolean newMetaData)
      • isMetaData

        public boolean isMetaData()
      • setOutputDirectory

        public void setOutputDirectory​(java.lang.String newOutputDirectory)
        Specified by:
        setOutputDirectory in interface AlbumEngine
      • getInterpretedOutputDirectory

        public java.io.File getInterpretedOutputDirectory()
      • setAlbumAddress

        public void setAlbumAddress​(java.lang.String albumAddress)
      • getAlbumAddress

        public java.lang.String getAlbumAddress()
      • setRows

        public void setRows​(int newRows)
      • getRows

        public int getRows()
      • setLimit

        public void setLimit​(int limit)
        Limit number of album objects that are to be processed 0 = unlimited Use of this method by 3:rd party developers is discouraged
        Specified by:
        setLimit in interface AlbumEngine
        Since:
        8.3
      • getLimit

        public int getLimit()
      • setImageLinking

        public void setImageLinking​(java.lang.String newImageLinking)
        Set image linking to one of the LINK_ string constants defined in this class
      • getImageLinking

        public java.lang.String getImageLinking()
      • setCopyOriginals

        public void setCopyOriginals​(boolean newCopyOriginals)
      • isCopyOriginals

        public boolean isCopyOriginals()
      • getWebPassword

        public java.lang.String getWebPassword()
        Upload privacy related
      • setWebPassword

        public void setWebPassword​(java.lang.String webPassword)
        Upload privacy related
      • isVisibleOnProfilePage

        public boolean isVisibleOnProfilePage()
        Upload privacy related
      • setVisibleOnProfilePage

        public void setVisibleOnProfilePage​(boolean visibleOnProfilePage)
        Upload privacy related
      • setSkin

        public void setSkin​(java.lang.String newSkin)
        Specified by:
        setSkin in interface AlbumEngine
      • getSkin

        public java.lang.String getSkin()
        Specified by:
        getSkin in interface AlbumEngine
      • setPageExtension

        public void setPageExtension​(java.lang.String newPageExtension)
      • getPageExtension

        public java.lang.String getPageExtension()
      • getResourceDirectory

        public java.lang.String getResourceDirectory()
        JAlbum 4.5 additions
      • getThumbnailDirectory

        public java.lang.String getThumbnailDirectory()
      • getCloseupDirectory

        public java.lang.String getCloseupDirectory()
      • getSlideDirectory

        public java.lang.String getSlideDirectory()
      • getThumbnailPrefix

        public java.lang.String getThumbnailPrefix()
      • getCloseupPrefix

        public java.lang.String getCloseupPrefix()
      • setTextFileComment

        public void setTextFileComment​(boolean newtextFileComment)
        JAlbum 4.6 additions
      • isTextFileComment

        public boolean isTextFileComment()
      • setReadXmp

        public void setReadXmp​(boolean readXmp)
        When reading comments, give priority to XMP metadata over other metadata sources
        Parameters:
        readXmp -
        Since:
        10
      • isReadXmp

        public boolean isReadXmp()
      • setJpegComment

        public void setJpegComment​(boolean newjpegComment)
      • isJpegComment

        public boolean isJpegComment()
      • setIptcCaption

        public void setIptcCaption​(boolean newiptcCaption)
      • isIptcCaption

        public boolean isIptcCaption()
      • setExifUserComment

        public void setExifUserComment​(boolean newexifUserComment)
      • isExifUserComment

        public boolean isExifUserComment()
      • getTitleSource

        public TitleSource getTitleSource()
        Since:
        9.6
      • setTitleSource

        public void setTitleSource​(TitleSource titleSource)
        Since:
        9.6
      • setHighQualityThumbs

        public void setHighQualityThumbs​(boolean newhighQualityThumbs)
        Control whether to force smooth scaling for thumbnails or rely on the general scaling quality setting
        Parameters:
        newhighQualityThumbs -
      • isHighQualityThumbs

        public boolean isHighQualityThumbs()
      • isForceJPEGWriting

        public boolean isForceJPEGWriting()
      • isForceProcessing

        public boolean isForceProcessing()
        Force image processing even if source image is smaller than destination and no filters are applied
        Since:
        17.1
      • setForceProcessing

        public void setForceProcessing​(boolean forceProcessing)
        Force image processing even if source image is smaller than destination and no filters are applied
        Parameters:
        forceProcessing -
        Since:
        17.1
      • setForceJPEGWriting

        public void setForceJPEGWriting​(boolean force)
        Ensure that images are always written as JPEGs (never PNG)
        Parameters:
        force -
        Since:
        10.5
      • isSuperimposeFilmIcon

        public boolean isSuperimposeFilmIcon()
        Since:
        jAlbum 8.12
      • setSuperimposeFilmIcon

        public void setSuperimposeFilmIcon​(boolean superimposeFilmIcon)
        Tell if to superimpose a film icon onto the thumbnails of movie files
        Since:
        jAlbum 8.12
      • setExifImageDescription

        public void setExifImageDescription​(boolean newexifImageDescription)
      • isExifImageDescription

        public boolean isExifImageDescription()
      • setIncludeDirectories

        public void setIncludeDirectories​(boolean newIncludeDirectories)
      • isIncludeDirectories

        public boolean isIncludeDirectories()
      • setUserVariables

        public void setUserVariables​(java.util.Map newUserVariables)
        Specified by:
        setUserVariables in interface AlbumEngine
      • getVideoParameters

        public Parameters getVideoParameters()
      • setVideoParameters

        public void setVideoParameters​(Parameters videoParameters)
      • isUseCustomVideoSettings

        public boolean isUseCustomVideoSettings()
      • setUseCustomVideoSettings

        public void setUseCustomVideoSettings​(boolean useCustomVideoSettings)
      • getVideoQuality

        public int getVideoQuality()
      • setVideoQuality

        public void setVideoQuality​(int videoQuality)
      • setVideoResolution

        public void setVideoResolution​(VideoResolution videoResolution)
      • setSkinVariables

        public void setSkinVariables​(java.util.Map newSkinVariables)
        The new way of passing variables from skin user interfaces to the AlbumBean (Previously the user variables mechanism was used which bloated the user variables)
        Specified by:
        setSkinVariables in interface AlbumEngine
        Since:
        5.2
      • setProperties

        public void setProperties​(java.util.Properties props)
        Convenience method that calls the relevant setter methods on this bean depending on the passed properties. Skin and user variables, prefixed with skin. and user. will be installed as skin- and user variables
        Specified by:
        setProperties in interface AlbumEngine
        Since:
        8.4
      • setRemoteDirectory

        public void setRemoteDirectory​(java.lang.String newRemoteDirectory)
        Might be moved out of AlbumBean
      • getRemoteDirectory

        public java.lang.String getRemoteDirectory()
        Might be moved out of AlbumBean
      • setAccountProfileName

        public void setAccountProfileName​(java.lang.String newAccountProfileName)
      • getAccountProfileName

        public java.lang.String getAccountProfileName()
      • setReverseOrder

        public void setReverseOrder​(boolean newReverseOrder)
      • isReverseOrder

        public boolean isReverseOrder()
      • setTextEncoding

        public void setTextEncoding​(java.lang.String newTextEncoding)
      • getTextEncoding

        public java.lang.String getTextEncoding()
      • setWriteUTF8

        public void setWriteUTF8​(boolean newWriteUTF8)
      • isWriteUTF8

        public boolean isWriteUTF8()
      • setDirectoriesFirst

        public void setDirectoriesFirst​(boolean newDirectoriesFirst)
      • isDirectoriesFirst

        public boolean isDirectoriesFirst()
      • setIgnorePattern

        public void setIgnorePattern​(java.lang.String ignorePattern)
      • getIgnorePattern

        public java.lang.String getIgnorePattern()
      • setIncludePattern

        public void setIncludePattern​(java.lang.String includePattern)
        Include only files matching includePattern
        Since:
        6.5
      • getIncludePattern

        public java.lang.String getIncludePattern()
        Since:
        6.5
      • setVars

        @Deprecated
        public static void setVars​(java.util.Map<java.lang.String,​java.lang.Object> variables,
                                   bsh.Interpreter interpreter)
                            throws javax.script.ScriptException
        Deprecated.
        Use setVars(Map variables, ScriptEngine engine)
        Throws:
        javax.script.ScriptException
      • setVars

        public static void setVars​(java.util.Map<java.lang.String,​java.lang.Object> variables,
                                   javax.script.ScriptEngine engine)
        Called from JConsoleFrame only. Remove later and use our own scopes
        Parameters:
        variables -
        engine -
      • setUsing

        public void setUsing​(java.lang.Object using)
      • getScalingMethod

        public java.lang.String getScalingMethod()
      • setScalingMethod

        public void setScalingMethod​(java.lang.String scalingMethod)
      • getSmoothScalingType

        public CustomScaler.Type getSmoothScalingType()
        Returns:
        Since:
        15
      • setSmoothScalingType

        public void setSmoothScalingType​(CustomScaler.Type smoothScalingType)
        Since:
        15
      • isAcceleratedScaling

        public boolean isAcceleratedScaling()
        Since 8.3.5
      • setAcceleratedScaling

        public void setAcceleratedScaling​(boolean hardwareScaling)
        Attempt to use hardware accelerated image scaling. Is usually faster but can produce worse results on some graphics cards Since 8.3.5
      • isSearchEngineFriendlyNames

        public boolean isSearchEngineFriendlyNames()
        Returns:
        the searchEngineFriendlyNames
      • setSearchEngineFriendlyNames

        public void setSearchEngineFriendlyNames​(boolean searchEngineFriendlyNames)
        Parameters:
        searchEngineFriendlyNames - the searchEngineFriendlyNames to set
      • isWebSafeNames

        public boolean isWebSafeNames()
        Since:
        11.3
      • isChainDirectories

        public boolean isChainDirectories()
        Returns:
        Since:
        12.2
      • setChainDirectories

        public void setChainDirectories​(boolean chainDirectories)
        Enable sequential traversal of an album tree via nextPage, previousPage, nextIndexPage and previousIndexPage
        Since:
        12.2
      • getCreditText

        public AlbumBean.CreditText getCreditText()
        Key for text to use for credit links
        Returns:
        Since:
        10.10
      • setCreditText

        public void setCreditText​(AlbumBean.CreditText creditText)
        Set key for text to use for credit links
        Since:
        10.10