
    h                     F    S SK r SSKJrJrJrJrJrJr  Sr " S S\	5      r
g)    N   )NullSessionInterfaceRedisSessionInterfaceMemcachedSessionInterfaceFileSystemSessionInterfaceMongoDBSessionInterfaceSqlAlchemySessionInterfacez0.5.0c                   .    \ rS rSrSrSS jrS rS rSrg)	Session
   a  This class is used to add Server-side Session to one or more Flask
applications.

There are two usage modes.  One is initialize the instance with a very
specific Flask application::

    app = Flask(__name__)
    Session(app)

The second possibility is to create the object once and configure the
application later::

    sess = Session()

    def create_app():
        app = Flask(__name__)
        sess.init_app(app)
        return app

By default Flask-Session will use :class:`NullSessionInterface`, you
really should configurate your app to use a different SessionInterface.

.. note::

    You can not use ``Session`` instance directly, what ``Session`` does
    is just change the :attr:`~flask.Flask.session_interface` attribute on
    your Flask applications.
Nc                 :    Xl         Ub  U R                  U5        g g N)appinit_appselfr   s     kC:\Users\ROHAN GUPTA\OneDrive\Desktop\mathbuddy-assessment\venv\Lib\site-packages\flask_session/__init__.py__init__Session.__init__(   s    ?MM#     c                 0    U R                  U5      Ul        g)zqThis is used to set up session for your app object.

:param app: the Flask app object with proper configuration.
N)_get_interfacesession_interfacer   s     r   r   Session.init_app-   s    
 !% 3 3C 8r   c           	      B   UR                   R                  5       nUR                  SS5        UR                  SS5        UR                  SS5        UR                  SS5        UR                  S	S 5        UR                  S
S 5        UR                  S[        R                  R                  [        R                  " 5       S5      5        UR                  SS5        UR                  SS5        UR                  SS 5        UR                  SS5        UR                  SS5        UR                  SS 5        UR                  SS5        US   S:X  a  [        US	   US   US   US   5      nU$ US   S:X  a  [        US
   US   US   US   5      nU$ US   S:X  a$  [        US   US   US   US   US   US   5      nU$ US   S:X  a$  [        US   US   US   US   US   US   5      nU$ US   S:X  a   [        XS   US   US   US   US   5      nU$ [        5       nU$ )NSESSION_TYPEnullSESSION_PERMANENTTSESSION_USE_SIGNERFSESSION_KEY_PREFIXzsession:SESSION_REDISSESSION_MEMCACHEDSESSION_FILE_DIRflask_sessionSESSION_FILE_THRESHOLDi  SESSION_FILE_MODEi  SESSION_MONGODBSESSION_MONGODB_DBSESSION_MONGODB_COLLECTsessionsSESSION_SQLALCHEMYSESSION_SQLALCHEMY_TABLEredis	memcached
filesystemmongodb
sqlalchemy)configcopy
setdefaultospathjoingetcwdr   r   r   r   r	   r   )r   r   r2   r   s       r   r   Session._get_interface4   s   ".&1-t4.6.
;/40-t4,'',,ryy{OD	F2C8-s3+T2.@3Z@.54jA.!W, 5'0D)E+,f5H.I!K6 ! 1 N#{2 9*+V4H-I+,f5H.I!K. ! ) N#|3 :)*F3K,L*+V4H-I+,f5H.I!K& !  N#y0 7()62F+G01+,f5I.J*+	!- !  N#|3 :0112+,f5I.J*+	!- !  !5 6  r   )r   r   )	__name__
__module____qualname____firstlineno____doc__r   r   r   __static_attributes__ r   r   r   r   
   s    :
9.!r   r   )r5   r*   r   r   r   r   r   r	   __version__objectr   r@   r   r   <module>rC      s'    	8 8 X!f X!r   