diff options
Diffstat (limited to 'java/demo/Database/library/Session.ice')
-rw-r--r-- | java/demo/Database/library/Session.ice | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/java/demo/Database/library/Session.ice b/java/demo/Database/library/Session.ice new file mode 100644 index 00000000000..f833c9d0394 --- /dev/null +++ b/java/demo/Database/library/Session.ice @@ -0,0 +1,72 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2008 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +#ifndef LIBRARY_SESSION_ICE +#define LIBRARY_SESSION_ICE + +module Demo +{ + +/* Forward declaration. */ +interface Library; + +/** + * + * The session object. This is used to retrieve a per-session library + * on behalf of the client. If the session is not refreshed on a + * periodic basis, it will be automatically destroyed. + * + */ +interface Session +{ + /** + * + * Get the library object. + * + * @return A proxy for the new library. + * + **/ + Library* getLibrary(); + + /** + * + * Refresh a session. If a session is not refreshed on a regular + * basis by the client, it will be automatically destroyed. + * + **/ + idempotent void refresh(); + + /** + * + * Destroy the session. + * + **/ + void destroy(); +}; + +/** + * + * Interface to create new sessions. + * + **/ +interface SessionFactory +{ + /** + * + * Create a session. + * + * @return A proxy to the session. + * + **/ + Session* create(); +}; + +}; + +#endif |