001// Copyright 2009 The Apache Software Foundation
002//
003// Licensed under the Apache License, Version 2.0 (the "License");
004// you may not use this file except in compliance with the License.
005// You may obtain a copy of the License at
006//
007//     http://www.apache.org/licenses/LICENSE-2.0
008//
009// Unless required by applicable law or agreed to in writing, software
010// distributed under the License is distributed on an "AS IS" BASIS,
011// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
012// See the License for the specific language governing permissions and
013// limitations under the License.
014
015package org.apache.tapestry5.hibernate;
016
017/**
018 * Configuration symbols, for use with contributions to {@link org.apache.tapestry5.ioc.services.ApplicationDefaults}.
019 *
020 * @since 5.1.0.0
021 */
022public class HibernateSymbols
023{
024    /**
025     * If "true", then Hibernate will be started up at application launch, rather than lazily.
026     */
027    public static final String EARLY_START_UP = "tapestry.hibernate.early-startup";
028
029    /**
030     * If true, then the last {@link org.apache.tapestry5.hibernate.HibernateConfigurer} will invoke {@link
031     * org.hibernate.cfg.Configuration#configure()}, to read the application's <code>hibernate.cfg.xml</code>. This
032     * should be set to false for applications that configure exclusively in code.
033     */
034    public static final String DEFAULT_CONFIGURATION = "tapestry.hibernate.default-configuration";
035
036    /**
037     * If true (the default), then {@link org.apache.tapestry5.ValueEncoder}s are automatically created for each entity.
038     * Override to "false" to handle entity value encoding explicitly.
039     */
040    public static final String PROVIDE_ENTITY_VALUE_ENCODERS = "tapestry.hibernate.provide-entity-value-encoders";
041
042    /**
043     * If true, then "entity" persistence strategy is used to store Hibernate entities as {@code Session State Objects}.
044     * 
045     * @since 5.2.0.0
046     */
047    public static final String ENTITY_SESSION_STATE_PERSISTENCE_STRATEGY_ENABLED = "tapestry.hibernate.entity-session-state-persistence-strategy-enabled";
048}