Hi All, The `SessionManager` interface and `SessionManagerFactory` interface methods would be as follows:
*SessionManager* This class is responsible for managing the user sessions for a single UUF app. - Session createSession(User user, HttpRequest request, HttpResponse response) throws SessionManagerException; - Optional<Session> getSession(HttpRequest request, HttpResponse response) throws SessionManagerException; - boolean destroySession(HttpRequest request, HttpResponse response) throws SessionManagerException; - int getCount(); *SessionManagerFactory* This class is responsible for providing session managers for UUF apps. - SessionManager getSessionManager(String appName, Configuration configuration) throws SessionManagerException; On Tue, May 2, 2017 at 5:57 PM, Vidura Nanayakkara <[email protected]> wrote: > Hi All, > > According to [1], the following points will be amended. > > In order to plug in a custom session manager, one need to implement the > given `SessionManager` and the `SessionManagerFactory` interface. That > implementation needs to be specified in the `app.yaml` configuration of the > particular UUF app. > > Example app.yaml configuration: > > *# Session manager configuration for this app* > *sessionManagement:* > * # Session manager factory for this app* > * factoryClassName: "..."* > *# Session timeout in seconds for this app* > * timeout: 600* > > > [1] Updated Invitation: UUF Pluggable Session Manager and Authenticator > Review @ Tue May 2, 2017 2:30pm - 3:30pm (IST) (WSO2 Engineering Group) > > > On Tue, May 2, 2017 at 12:53 PM, Dilan Udara Ariyaratne <[email protected]> > wrote: > >> Hi Sajith, >> >> My apologies. Did not see the fact that SessionManager is already >> extending SessionHandler, >> so with your explanation on their difference, it seems fine to me. >> >> Thanks, >> Dilan. >> >> >> >> *Dilan U. Ariyaratne* >> Senior Software Engineer >> WSO2 Inc. <http://wso2.com/> >> Mobile: +94766405580 <%2B94766405580> >> lean . enterprise . middleware >> >> >> On Tue, May 2, 2017 at 12:18 PM, SajithAR Ariyarathna <[email protected]> >> wrote: >> >>> Hi Dilan, >>> >>> The purpose of the SessionHandler and SessionManager is different. >>> >>> SessionManager is an extension point (a plugin for UUF) for webapp >>> developers. SessionHandler is meant to be passed for other plugins (e.g. >>> Authenticator) as a way do session related operations (e.g. create a new >>> session when login). If we pass the SessionManager instead, it will over >>> expose the session management operations (e.g. close() method). So to >>> encapsulate properly we decided to go with two interfaces, SessionHandler >>> and SessionManager. >>> >>> Thanks. >>> >>> On Tue, May 2, 2017 at 11:49 AM, Dilan Udara Ariyaratne <[email protected] >>> > wrote: >>> >>>> Hi Imesh and @Vidura, >>>> >>>> I wonder if both SessionHandler and SessionManager interfaces could be >>>> merged together to have one interface >>>> that could derive all management level functionalities of a session ? >>>> >>>> I think that current SessionManager, i.e. org.wso2.carbon.uuf.spi.auth. >>>> SessionManager is bit meaningless without capabilities like >>>> createSession(), getSession() and destroySession() that >>>> org.wso2.carbon.uuf.api.auth.SessionHandler provides. >>>> >>>> WDYT? >>>> >>>> Thanks, >>>> Dilan. >>>> >>>> *Dilan U. Ariyaratne* >>>> Senior Software Engineer >>>> WSO2 Inc. <http://wso2.com/> >>>> Mobile: +94766405580 <%2B94766405580> >>>> lean . enterprise . middleware >>>> >>>> >>>> On Tue, May 2, 2017 at 11:02 AM, Imesh Gunaratne <[email protected]> >>>> wrote: >>>> >>>>> On Tue, May 2, 2017 at 10:44 AM, Dilan Udara Ariyaratne < >>>>> [email protected]> wrote: >>>>> >>>>>> >>>>>> In the meantime, could you elaborate on the method level details of >>>>>> the Session manager interface, too? >>>>>> >>>>> >>>>> SessionManager: >>>>> https://github.com/wso2/carbon-uuf/pull/241/files#diff-50f8 >>>>> 2419222617b7f14b6d08d45984ac >>>>> >>>>> SessionHandler: >>>>> https://github.com/wso2/carbon-uuf/pull/241/files#diff-39f1b >>>>> 4c291c422e721e8c56d191c75e3 >>>>> >>>>> Thanks >>>>> >>>>>> >>>>>> Cheers, >>>>>> Dilan. >>>>>> >>>>>> *Dilan U. Ariyaratne* >>>>>> Senior Software Engineer >>>>>> WSO2 Inc. <http://wso2.com/> >>>>>> Mobile: +94766405580 <%2B94766405580> >>>>>> lean . enterprise . middleware >>>>>> >>>>>> >>>>>> On Mon, May 1, 2017 at 10:39 PM, Shazni Nazeer <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> It is beneficial to have this in the UUF. >>>>>>> >>>>>>> Many frameworks (in particular web frameworks such as Django, >>>>>>> CakePHP and Ruby on Rails) support this kind of pluggable Session >>>>>>> Management capabilities. >>>>>>> >>>>>>> On Fri, Apr 28, 2017 at 3:46 PM, Vidura Nanayakkara < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> Hi All, >>>>>>>> >>>>>>>> We are in the process of introducing extensible session management >>>>>>>> mechanism for Carbon UUF. >>>>>>>> >>>>>>>> Previously in Carbon UUF, the session management was not extensible >>>>>>>> and was tightly coupled to the Carbon UUF framework. The purpose of >>>>>>>> introducing an extensible session management mechanism is to give the >>>>>>>> ability for the web app developers to plug in any session management >>>>>>>> implementation of choice. For instance, this can be a JDBC persistent >>>>>>>> session management or a token based session management implementation. >>>>>>>> >>>>>>>> In order to plug in a custom session manager, one need to implement >>>>>>>> the given `SessionManager` interface. That implementation needs to be >>>>>>>> specified in the `app.yaml` configuration of the particular UUF app. >>>>>>>> >>>>>>>> Example app.yaml configuration: >>>>>>>> >>>>>>>> *...* >>>>>>>> >>>>>>>> # Session manager for this app >>>>>>>> >>>>>>>> sessionManager: *"org.wso2.carbon.uuf.api.auth.InMemorySessionManager"* >>>>>>>> >>>>>>>> *...* >>>>>>>> >>>>>>>> *WDYT?* >>>>>>>> >>>>>>>> >>>>>>>> Best Regards, >>>>>>>> >>>>>>>> *Vidura Nanayakkara* >>>>>>>> Software Engineer >>>>>>>> >>>>>>>> Email : [email protected] >>>>>>>> Mobile : +94 (0) 717 919277 <+94%2071%20791%209277> >>>>>>>> Web : http://wso2.com >>>>>>>> Blog : https://medium.com/@viduran <http://wso2.com/> >>>>>>>> LinkedIn : https://lk.linkedin.com/in/vidura-nanayakkara >>>>>>>> <http://wso2.com/> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Architecture mailing list >>>>>>>> [email protected] >>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Shazni Nazeer >>>>>>> >>>>>>> Mob : +94 777737331 >>>>>>> LinkedIn : http://lk.linkedin.com/in/shazninazeer >>>>>>> Blog : http://shazninazeer.blogspot.com >>>>>>> >>>>>>> <http://wso2.com/signature> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Architecture mailing list >>>>>>> [email protected] >>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>> >>>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Architecture mailing list >>>>>> [email protected] >>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Imesh Gunaratne* >>>>> WSO2 Inc: http://wso2.com >>>>> T: +94 11 214 5345 M: +94 77 374 2057 <+94%2077%20374%202057> >>>>> W: https://medium.com/@imesh TW: @imesh >>>>> lean. enterprise. middleware >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> Architecture mailing list >>>> [email protected] >>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>> >>>> >>> >>> >>> -- >>> Sajith Janaprasad Ariyarathna >>> Senior Software Engineer; WSO2, Inc.; http://wso2.com/ >>> <https://wso2.com/signature> >>> >> >> >> _______________________________________________ >> Architecture mailing list >> [email protected] >> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >> >> > > > -- > Best Regards, > > *Vidura Nanayakkara* > Software Engineer > > Email : [email protected] > Mobile : +94 (0) 717 919277 <+94%2071%20791%209277> > Web : http://wso2.com > Blog : https://medium.com/@viduran <http://wso2.com/> > LinkedIn : https://lk.linkedin.com/in/vidura-nanayakkara > <http://wso2.com/> > -- Best Regards, *Vidura Nanayakkara* Software Engineer Email : [email protected] Mobile : +94 (0) 717 919277 Web : http://wso2.com Blog : https://medium.com/@viduran <http://wso2.com/> LinkedIn : https://lk.linkedin.com/in/vidura-nanayakkara <http://wso2.com/>
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
