//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.7 
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2019.08.07 at 12:33:12 PM UTC 
//


package com.sun.ts.lib.implementation.sun.javaee.runtime.web;

import java.io.Serializable;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.NormalizedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;


/**
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "managerProperties",
    "storeProperties"
})
@XmlRootElement(name = "session-manager")
public class SessionManager
    implements Serializable
{

    private final static long serialVersionUID = 1L;
    @XmlAttribute(name = "persistence-type")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String persistenceType;
    @XmlElement(name = "manager-properties")
    protected ManagerProperties managerProperties;
    @XmlElement(name = "store-properties")
    protected StoreProperties storeProperties;

    /**
     * Gets the value of the persistenceType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getPersistenceType() {
        if (persistenceType == null) {
            return "memory";
        } else {
            return persistenceType;
        }
    }

    /**
     * Sets the value of the persistenceType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setPersistenceType(String value) {
        this.persistenceType = value;
    }

    /**
     * Gets the value of the managerProperties property.
     * 
     * @return
     *     possible object is
     *     {@link ManagerProperties }
     *     
     */
    public ManagerProperties getManagerProperties() {
        return managerProperties;
    }

    /**
     * Sets the value of the managerProperties property.
     * 
     * @param value
     *     allowed object is
     *     {@link ManagerProperties }
     *     
     */
    public void setManagerProperties(ManagerProperties value) {
        this.managerProperties = value;
    }

    /**
     * Gets the value of the storeProperties property.
     * 
     * @return
     *     possible object is
     *     {@link StoreProperties }
     *     
     */
    public StoreProperties getStoreProperties() {
        return storeProperties;
    }

    /**
     * Sets the value of the storeProperties property.
     * 
     * @param value
     *     allowed object is
     *     {@link StoreProperties }
     *     
     */
    public void setStoreProperties(StoreProperties value) {
        this.storeProperties = value;
    }

}
