summaryrefslogtreecommitdiff
path: root/java/demo/Freeze/phonebook/Server.java
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2003-10-09 03:26:39 +0000
committerBernard Normier <bernard@zeroc.com>2003-10-09 03:26:39 +0000
commite73a15e71f84c78eb3eb80ecc7a67c1ef057b505 (patch)
tree15b710479e7007d5c15bf6687c42077fef11a5a9 /java/demo/Freeze/phonebook/Server.java
parentdeadlock upon shutdown fix (diff)
downloadice-e73a15e71f84c78eb3eb80ecc7a67c1ef057b505.tar.bz2
ice-e73a15e71f84c78eb3eb80ecc7a67c1ef057b505.tar.xz
ice-e73a15e71f84c78eb3eb80ecc7a67c1ef057b505.zip
Initial Freeze Index implementation (without code generation)
Diffstat (limited to 'java/demo/Freeze/phonebook/Server.java')
-rw-r--r--java/demo/Freeze/phonebook/Server.java19
1 files changed, 11 insertions, 8 deletions
diff --git a/java/demo/Freeze/phonebook/Server.java b/java/demo/Freeze/phonebook/Server.java
index d5c08905aa9..f5114ba649d 100644
--- a/java/demo/Freeze/phonebook/Server.java
+++ b/java/demo/Freeze/phonebook/Server.java
@@ -18,11 +18,18 @@ class PhoneBookServer extends Ice.Application
run(String[] args)
{
Ice.Properties properties = communicator().getProperties();
-
+
+ //
+ // Create the Name index
+ //
+ NameIndex index = new NameIndex("name");
+ Freeze.Index[] indices = new Freeze.Index[1];
+ indices[0] = index;
+
//
// Create an Evictor for contacts.
//
- Freeze.Evictor evictor = Freeze.Util.createEvictor(communicator(), _envName, "contacts", true);
+ Freeze.Evictor evictor = Freeze.Util.createEvictor(communicator(), _envName, "contacts", indices, true);
int evictorSize = properties.getPropertyAsInt("PhoneBook.EvictorSize");
if(evictorSize > 0)
{
@@ -39,16 +46,14 @@ class PhoneBookServer extends Ice.Application
//
// Create the phonebook, and add it to the Object Adapter.
//
- PhoneBookI phoneBook = new PhoneBookI(communicator(), _envName, "phonebook", evictor);
+ PhoneBookI phoneBook = new PhoneBookI(evictor, index);
adapter.add(phoneBook, Ice.Util.stringToIdentity("phonebook"));
//
// Create and install a factory and initializer for contacts.
//
- Ice.ObjectFactory contactFactory = new ContactFactory(phoneBook, evictor);
- Freeze.ServantInitializer contactInitializer = (Freeze.ServantInitializer)contactFactory;
+ Ice.ObjectFactory contactFactory = new ContactFactory(evictor);
communicator().addObjectFactory(contactFactory, "::Contact");
- evictor.installServantInitializer(contactInitializer);
//
// Everything ok, let's go.
@@ -58,8 +63,6 @@ class PhoneBookServer extends Ice.Application
shutdownOnInterrupt();
communicator().waitForShutdown();
defaultInterrupt();
-
- phoneBook.close();
return 0;
}