#!/usr/bin/env python
# -*- coding: utf-8 -*-

#
# Copyright (C) 2014-2023 University of Dundee & Open Microscopy Environment.
# All rights reserved.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#

import django.contrib.sessions.backends.file
import warnings

DEPRECATION_MESSAGE = (
    "This session store implementation behaves identically to Django's built-in "
    "'django.contrib.sessions.backends.file' and is deprecated as of "
    "OMERO.web 5.22.0."
)


class SessionStore(django.contrib.sessions.backends.file.SessionStore):
    """
    Implements a file based session store.
    """

    def __init__(self, session_key=None):
        warnings.warn(DEPRECATION_MESSAGE, DeprecationWarning)
        super(SessionStore, self).__init__(session_key)
