001// license-header java merge-point
002//
003// Attention: generated code (by Metafacade.vsl) - do not modify!
004//
005package org.andromda.cartridges.hibernate.metafacades;
006
007import org.andromda.metafacades.uml.EntityAssociation;
008
009/**
010 * TODO: Model Documentation for org.andromda.cartridges.hibernate.metafacades.HibernateAssociation
011 *
012 * Metafacade interface to be used by AndroMDA cartridges.
013 */
014public interface HibernateAssociation
015    extends EntityAssociation
016{
017    /**
018     * Indicates the metafacade type (used for metafacade mappings).
019     *
020     * @return boolean always <code>true</code>
021     */
022    public boolean isHibernateAssociationMetaType();
023
024    /**
025     * EhCache property. Defines the maximum number of objects that will be created in memory.
026     * @return int
027     */
028    public int getEhCacheMaxElementsInMemory();
029
030    /**
031     * EhCache property. Defines the time to idle for an element before it expires.
032     * @return int
033     */
034    public int getEhCacheTimeToIdleSeconds();
035
036    /**
037     * EhCache property. Defines the time to live for an element before it expires.
038     * @return int
039     */
040    public int getEhCacheTimeToLiveSeconds();
041
042    /**
043     * TODO: Model Documentation for
044     * org.andromda.cartridges.hibernate.metafacades.HibernateAssociation.hibernateCacheType
045     * @return String
046     */
047    public String getHibernateCacheType();
048
049    /**
050     * EhCache property. Defines if elements are eternal.
051     * @return boolean
052     */
053    public boolean isEhCacheEternal();
054
055    /**
056     * EhCache property. Defines if elements can overflow to disk
057     * @return boolean
058     */
059    public boolean isEhCacheOverflowToDisk();
060
061    /**
062     * Specifies whether the cache for this association is distributed.
063     * @return boolean
064     */
065    public boolean isHibernateCacheDistributed();
066}