summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
authorMichi Henning <michi@zeroc.com>2008-05-11 18:12:08 +1000
committerMichi Henning <michi@zeroc.com>2008-05-11 18:12:08 +1000
commit410473b04464bfff67a4b4872130ba60f233e9c2 (patch)
treeb62b4dee98cc20320fca8204be27a7fdc9369363 /cpp
parentUpdated Freeze demos to align with life cycle chapter. Added interactive (diff)
downloadice-410473b04464bfff67a4b4872130ba60f233e9c2.tar.bz2
ice-410473b04464bfff67a4b4872130ba60f233e9c2.tar.xz
ice-410473b04464bfff67a4b4872130ba60f233e9c2.zip
Removed freeze_filesystem demo (now called evictor_filesystem).
Diffstat (limited to 'cpp')
-rw-r--r--cpp/demo/book/freeze_filesystem/.depend9
-rw-r--r--cpp/demo/book/freeze_filesystem/.gitignore13
-rw-r--r--cpp/demo/book/freeze_filesystem/Client.cpp148
-rw-r--r--cpp/demo/book/freeze_filesystem/Filesystem.ice61
-rw-r--r--cpp/demo/book/freeze_filesystem/Makefile50
-rw-r--r--cpp/demo/book/freeze_filesystem/Makefile.mak57
-rw-r--r--cpp/demo/book/freeze_filesystem/PersistentFilesystem.ice36
-rw-r--r--cpp/demo/book/freeze_filesystem/PersistentFilesystemI.cpp277
-rw-r--r--cpp/demo/book/freeze_filesystem/PersistentFilesystemI.h95
-rw-r--r--cpp/demo/book/freeze_filesystem/README10
-rw-r--r--cpp/demo/book/freeze_filesystem/Server.cpp85
-rw-r--r--cpp/demo/book/freeze_filesystem/config.client28
-rw-r--r--cpp/demo/book/freeze_filesystem/config.server49
-rw-r--r--cpp/demo/book/freeze_filesystem/db/.gitignore1
-rwxr-xr-xcpp/demo/book/freeze_filesystem/expect.py38
-rwxr-xr-xcpp/demo/book/freeze_filesystem/freezefsC.dsp200
-rwxr-xr-xcpp/demo/book/freeze_filesystem/freezefsS.dsp212
17 files changed, 0 insertions, 1369 deletions
diff --git a/cpp/demo/book/freeze_filesystem/.depend b/cpp/demo/book/freeze_filesystem/.depend
deleted file mode 100644
index 2d886f19c7b..00000000000
--- a/cpp/demo/book/freeze_filesystem/.depend
+++ /dev/null
@@ -1,9 +0,0 @@
-Filesystem$(OBJEXT): Filesystem.cpp ./Filesystem.h $(includedir)/Ice/LocalObjectF.h $(includedir)/IceUtil/Shared.h $(includedir)/IceUtil/Config.h $(includedir)/Ice/Handle.h $(includedir)/IceUtil/Handle.h $(includedir)/IceUtil/Exception.h $(includedir)/Ice/Config.h $(includedir)/Ice/ProxyHandle.h $(includedir)/Ice/ProxyF.h $(includedir)/Ice/ObjectF.h $(includedir)/Ice/GCCountMap.h $(includedir)/Ice/GCShared.h $(includedir)/Ice/Exception.h $(includedir)/Ice/LocalObject.h $(includedir)/Ice/Proxy.h $(includedir)/IceUtil/Mutex.h $(includedir)/IceUtil/Lock.h $(includedir)/IceUtil/ThreadException.h $(includedir)/IceUtil/Time.h $(includedir)/Ice/ProxyFactoryF.h $(includedir)/Ice/ConnectionIF.h $(includedir)/Ice/RequestHandlerF.h $(includedir)/Ice/EndpointIF.h $(includedir)/Ice/Endpoint.h $(includedir)/Ice/UndefSysMacros.h $(includedir)/Ice/ObjectAdapterF.h $(includedir)/Ice/ReferenceF.h $(includedir)/Ice/OutgoingAsyncF.h $(includedir)/Ice/Current.h $(includedir)/Ice/ConnectionF.h $(includedir)/Ice/Identity.h $(includedir)/Ice/StreamF.h $(includedir)/Ice/CommunicatorF.h $(includedir)/Ice/Object.h $(includedir)/Ice/IncomingAsyncF.h $(includedir)/Ice/Outgoing.h $(includedir)/IceUtil/Monitor.h $(includedir)/IceUtil/Cond.h $(includedir)/Ice/InstanceF.h $(includedir)/Ice/BasicStream.h $(includedir)/Ice/ObjectFactoryF.h $(includedir)/Ice/Buffer.h $(includedir)/Ice/Protocol.h $(includedir)/Ice/StringConverter.h $(includedir)/IceUtil/Unicode.h $(includedir)/Ice/Incoming.h $(includedir)/Ice/ServantLocatorF.h $(includedir)/Ice/ServantManagerF.h $(includedir)/Ice/Direct.h $(includedir)/Ice/UserExceptionFactory.h $(includedir)/Ice/FactoryTable.h $(includedir)/Ice/FactoryTableDef.h $(includedir)/IceUtil/StaticMutex.h $(includedir)/Ice/UserExceptionFactoryF.h $(includedir)/Ice/LocalException.h $(includedir)/Ice/BuiltinSequences.h $(includedir)/Ice/ObjectFactory.h $(includedir)/IceUtil/Iterator.h $(includedir)/IceUtil/ScopedArray.h
-Client$(OBJEXT): Client.cpp $(includedir)/Ice/Ice.h $(includedir)/Ice/Initialize.h $(includedir)/Ice/CommunicatorF.h $(includedir)/Ice/LocalObjectF.h $(includedir)/IceUtil/Shared.h $(includedir)/IceUtil/Config.h $(includedir)/Ice/Handle.h $(includedir)/IceUtil/Handle.h $(includedir)/IceUtil/Exception.h $(includedir)/Ice/Config.h $(includedir)/Ice/ProxyHandle.h $(includedir)/Ice/ProxyF.h $(includedir)/Ice/ObjectF.h $(includedir)/Ice/GCCountMap.h $(includedir)/Ice/GCShared.h $(includedir)/Ice/Exception.h $(includedir)/Ice/LocalObject.h $(includedir)/Ice/UndefSysMacros.h $(includedir)/Ice/PropertiesF.h $(includedir)/Ice/Proxy.h $(includedir)/IceUtil/Mutex.h $(includedir)/IceUtil/Lock.h $(includedir)/IceUtil/ThreadException.h $(includedir)/IceUtil/Time.h $(includedir)/Ice/ProxyFactoryF.h $(includedir)/Ice/ConnectionIF.h $(includedir)/Ice/RequestHandlerF.h $(includedir)/Ice/EndpointIF.h $(includedir)/Ice/Endpoint.h $(includedir)/Ice/ObjectAdapterF.h $(includedir)/Ice/ReferenceF.h $(includedir)/Ice/OutgoingAsyncF.h $(includedir)/Ice/Current.h $(includedir)/Ice/ConnectionF.h $(includedir)/Ice/Identity.h $(includedir)/Ice/StreamF.h $(includedir)/Ice/Object.h $(includedir)/Ice/IncomingAsyncF.h $(includedir)/Ice/InstanceF.h $(includedir)/Ice/LoggerF.h $(includedir)/Ice/StatsF.h $(includedir)/Ice/StringConverter.h $(includedir)/Ice/BuiltinSequences.h $(includedir)/Ice/LocalException.h $(includedir)/Ice/Properties.h $(includedir)/Ice/Outgoing.h $(includedir)/IceUtil/Monitor.h $(includedir)/IceUtil/Cond.h $(includedir)/Ice/BasicStream.h $(includedir)/Ice/ObjectFactoryF.h $(includedir)/Ice/Buffer.h $(includedir)/Ice/Protocol.h $(includedir)/IceUtil/Unicode.h $(includedir)/Ice/OutgoingAsync.h $(includedir)/IceUtil/Timer.h $(includedir)/IceUtil/Thread.h $(includedir)/Ice/Incoming.h $(includedir)/Ice/ServantLocatorF.h $(includedir)/Ice/ServantManagerF.h $(includedir)/Ice/Direct.h $(includedir)/Ice/Logger.h $(includedir)/Ice/LoggerUtil.h $(includedir)/Ice/Stats.h $(includedir)/Ice/Communicator.h $(includedir)/Ice/RouterF.h $(includedir)/Ice/LocatorF.h $(includedir)/Ice/PluginF.h $(includedir)/Ice/ImplicitContextF.h $(includedir)/Ice/ObjectFactory.h $(includedir)/Ice/ObjectAdapter.h $(includedir)/Ice/FacetMap.h $(includedir)/Ice/ServantLocator.h $(includedir)/Ice/IncomingAsync.h $(includedir)/Ice/Process.h $(includedir)/Ice/Application.h $(includedir)/Ice/Connection.h $(includedir)/Ice/Functional.h $(includedir)/IceUtil/Functional.h $(includedir)/Ice/Stream.h $(includedir)/Ice/ImplicitContext.h $(includedir)/Ice/Locator.h $(includedir)/Ice/UserExceptionFactory.h $(includedir)/Ice/FactoryTable.h $(includedir)/Ice/FactoryTableDef.h $(includedir)/IceUtil/StaticMutex.h $(includedir)/Ice/UserExceptionFactoryF.h $(includedir)/Ice/ProcessF.h $(includedir)/Ice/Router.h $(includedir)/Ice/DispatchInterceptor.h $(includedir)/Ice/Plugin.h $(includedir)/Ice/IconvStringConverter.h ./Filesystem.h
-PersistentFilesystem$(OBJEXT): PersistentFilesystem.cpp ./PersistentFilesystem.h $(includedir)/Ice/LocalObjectF.h $(includedir)/IceUtil/Shared.h $(includedir)/IceUtil/Config.h $(includedir)/Ice/Handle.h $(includedir)/IceUtil/Handle.h $(includedir)/IceUtil/Exception.h $(includedir)/Ice/Config.h $(includedir)/Ice/ProxyHandle.h $(includedir)/Ice/ProxyF.h $(includedir)/Ice/ObjectF.h $(includedir)/Ice/GCCountMap.h $(includedir)/Ice/GCShared.h $(includedir)/Ice/Exception.h $(includedir)/Ice/LocalObject.h $(includedir)/Ice/Proxy.h $(includedir)/IceUtil/Mutex.h $(includedir)/IceUtil/Lock.h $(includedir)/IceUtil/ThreadException.h $(includedir)/IceUtil/Time.h $(includedir)/Ice/ProxyFactoryF.h $(includedir)/Ice/ConnectionIF.h $(includedir)/Ice/RequestHandlerF.h $(includedir)/Ice/EndpointIF.h $(includedir)/Ice/Endpoint.h $(includedir)/Ice/UndefSysMacros.h $(includedir)/Ice/ObjectAdapterF.h $(includedir)/Ice/ReferenceF.h $(includedir)/Ice/OutgoingAsyncF.h $(includedir)/Ice/Current.h $(includedir)/Ice/ConnectionF.h $(includedir)/Ice/Identity.h $(includedir)/Ice/StreamF.h $(includedir)/Ice/CommunicatorF.h $(includedir)/Ice/Object.h $(includedir)/Ice/IncomingAsyncF.h $(includedir)/Ice/Outgoing.h $(includedir)/IceUtil/Monitor.h $(includedir)/IceUtil/Cond.h $(includedir)/Ice/InstanceF.h $(includedir)/Ice/BasicStream.h $(includedir)/Ice/ObjectFactoryF.h $(includedir)/Ice/Buffer.h $(includedir)/Ice/Protocol.h $(includedir)/Ice/StringConverter.h $(includedir)/IceUtil/Unicode.h $(includedir)/Ice/Incoming.h $(includedir)/Ice/ServantLocatorF.h $(includedir)/Ice/ServantManagerF.h $(includedir)/Ice/Direct.h $(includedir)/Ice/UserExceptionFactory.h $(includedir)/Ice/FactoryTable.h $(includedir)/Ice/FactoryTableDef.h $(includedir)/IceUtil/StaticMutex.h $(includedir)/Ice/UserExceptionFactoryF.h ./Filesystem.h $(includedir)/Ice/LocalException.h $(includedir)/Ice/BuiltinSequences.h $(includedir)/Ice/ObjectFactory.h $(includedir)/IceUtil/Iterator.h $(includedir)/IceUtil/ScopedArray.h
-PersistentFilesystemI$(OBJEXT): PersistentFilesystemI.cpp ./PersistentFilesystemI.h ./PersistentFilesystem.h $(includedir)/Ice/LocalObjectF.h $(includedir)/IceUtil/Shared.h $(includedir)/IceUtil/Config.h $(includedir)/Ice/Handle.h $(includedir)/IceUtil/Handle.h $(includedir)/IceUtil/Exception.h $(includedir)/Ice/Config.h $(includedir)/Ice/ProxyHandle.h $(includedir)/Ice/ProxyF.h $(includedir)/Ice/ObjectF.h $(includedir)/Ice/GCCountMap.h $(includedir)/Ice/GCShared.h $(includedir)/Ice/Exception.h $(includedir)/Ice/LocalObject.h $(includedir)/Ice/Proxy.h $(includedir)/IceUtil/Mutex.h $(includedir)/IceUtil/Lock.h $(includedir)/IceUtil/ThreadException.h $(includedir)/IceUtil/Time.h $(includedir)/Ice/ProxyFactoryF.h $(includedir)/Ice/ConnectionIF.h $(includedir)/Ice/RequestHandlerF.h $(includedir)/Ice/EndpointIF.h $(includedir)/Ice/Endpoint.h $(includedir)/Ice/UndefSysMacros.h $(includedir)/Ice/ObjectAdapterF.h $(includedir)/Ice/ReferenceF.h $(includedir)/Ice/OutgoingAsyncF.h $(includedir)/Ice/Current.h $(includedir)/Ice/ConnectionF.h $(includedir)/Ice/Identity.h $(includedir)/Ice/StreamF.h $(includedir)/Ice/CommunicatorF.h $(includedir)/Ice/Object.h $(includedir)/Ice/IncomingAsyncF.h $(includedir)/Ice/Outgoing.h $(includedir)/IceUtil/Monitor.h $(includedir)/IceUtil/Cond.h $(includedir)/Ice/InstanceF.h $(includedir)/Ice/BasicStream.h $(includedir)/Ice/ObjectFactoryF.h $(includedir)/Ice/Buffer.h $(includedir)/Ice/Protocol.h $(includedir)/Ice/StringConverter.h $(includedir)/IceUtil/Unicode.h $(includedir)/Ice/Incoming.h $(includedir)/Ice/ServantLocatorF.h $(includedir)/Ice/ServantManagerF.h $(includedir)/Ice/Direct.h $(includedir)/Ice/UserExceptionFactory.h $(includedir)/Ice/FactoryTable.h $(includedir)/Ice/FactoryTableDef.h $(includedir)/IceUtil/StaticMutex.h $(includedir)/Ice/UserExceptionFactoryF.h ./Filesystem.h $(includedir)/IceUtil/IceUtil.h $(includedir)/IceUtil/AbstractMutex.h $(includedir)/IceUtil/Cache.h $(includedir)/IceUtil/CountDownLatch.h $(includedir)/IceUtil/CtrlCHandler.h $(includedir)/IceUtil/Functional.h $(includedir)/IceUtil/RWRecMutex.h $(includedir)/IceUtil/Thread.h $(includedir)/IceUtil/RecMutex.h $(includedir)/IceUtil/Timer.h $(includedir)/IceUtil/UUID.h $(includedir)/Freeze/Freeze.h $(includedir)/Freeze/Initialize.h $(includedir)/Ice/Ice.h $(includedir)/Ice/Initialize.h $(includedir)/Ice/PropertiesF.h $(includedir)/Ice/LoggerF.h $(includedir)/Ice/StatsF.h $(includedir)/Ice/BuiltinSequences.h $(includedir)/Ice/LocalException.h $(includedir)/Ice/Properties.h $(includedir)/Ice/OutgoingAsync.h $(includedir)/Ice/Logger.h $(includedir)/Ice/LoggerUtil.h $(includedir)/Ice/Stats.h $(includedir)/Ice/Communicator.h $(includedir)/Ice/RouterF.h $(includedir)/Ice/LocatorF.h $(includedir)/Ice/PluginF.h $(includedir)/Ice/ImplicitContextF.h $(includedir)/Ice/ObjectFactory.h $(includedir)/Ice/ObjectAdapter.h $(includedir)/Ice/FacetMap.h $(includedir)/Ice/ServantLocator.h $(includedir)/Ice/IncomingAsync.h $(includedir)/Ice/Process.h $(includedir)/Ice/Application.h $(includedir)/Ice/Connection.h $(includedir)/Ice/Functional.h $(includedir)/Ice/Stream.h $(includedir)/Ice/ImplicitContext.h $(includedir)/Ice/Locator.h $(includedir)/Ice/ProcessF.h $(includedir)/Ice/Router.h $(includedir)/Ice/DispatchInterceptor.h $(includedir)/Ice/Plugin.h $(includedir)/Ice/IconvStringConverter.h $(includedir)/Freeze/EvictorF.h $(includedir)/Freeze/ConnectionF.h $(includedir)/Freeze/Index.h $(includedir)/Freeze/DB.h $(includedir)/Freeze/Transaction.h $(includedir)/Freeze/BackgroundSaveEvictor.h $(includedir)/Freeze/Evictor.h $(includedir)/Freeze/Exception.h $(includedir)/Freeze/TransactionalEvictor.h $(includedir)/Freeze/Map.h $(includedir)/Freeze/Connection.h $(includedir)/Freeze/TransactionHolder.h $(includedir)/Freeze/Catalog.h $(includedir)/Freeze/CatalogData.h
-Server$(OBJEXT): Server.cpp ./PersistentFilesystemI.h ./PersistentFilesystem.h $(includedir)/Ice/LocalObjectF.h $(includedir)/IceUtil/Shared.h $(includedir)/IceUtil/Config.h $(includedir)/Ice/Handle.h $(includedir)/IceUtil/Handle.h $(includedir)/IceUtil/Exception.h $(includedir)/Ice/Config.h $(includedir)/Ice/ProxyHandle.h $(includedir)/Ice/ProxyF.h $(includedir)/Ice/ObjectF.h $(includedir)/Ice/GCCountMap.h $(includedir)/Ice/GCShared.h $(includedir)/Ice/Exception.h $(includedir)/Ice/LocalObject.h $(includedir)/Ice/Proxy.h $(includedir)/IceUtil/Mutex.h $(includedir)/IceUtil/Lock.h $(includedir)/IceUtil/ThreadException.h $(includedir)/IceUtil/Time.h $(includedir)/Ice/ProxyFactoryF.h $(includedir)/Ice/ConnectionIF.h $(includedir)/Ice/RequestHandlerF.h $(includedir)/Ice/EndpointIF.h $(includedir)/Ice/Endpoint.h $(includedir)/Ice/UndefSysMacros.h $(includedir)/Ice/ObjectAdapterF.h $(includedir)/Ice/ReferenceF.h $(includedir)/Ice/OutgoingAsyncF.h $(includedir)/Ice/Current.h $(includedir)/Ice/ConnectionF.h $(includedir)/Ice/Identity.h $(includedir)/Ice/StreamF.h $(includedir)/Ice/CommunicatorF.h $(includedir)/Ice/Object.h $(includedir)/Ice/IncomingAsyncF.h $(includedir)/Ice/Outgoing.h $(includedir)/IceUtil/Monitor.h $(includedir)/IceUtil/Cond.h $(includedir)/Ice/InstanceF.h $(includedir)/Ice/BasicStream.h $(includedir)/Ice/ObjectFactoryF.h $(includedir)/Ice/Buffer.h $(includedir)/Ice/Protocol.h $(includedir)/Ice/StringConverter.h $(includedir)/IceUtil/Unicode.h $(includedir)/Ice/Incoming.h $(includedir)/Ice/ServantLocatorF.h $(includedir)/Ice/ServantManagerF.h $(includedir)/Ice/Direct.h $(includedir)/Ice/UserExceptionFactory.h $(includedir)/Ice/FactoryTable.h $(includedir)/Ice/FactoryTableDef.h $(includedir)/IceUtil/StaticMutex.h $(includedir)/Ice/UserExceptionFactoryF.h ./Filesystem.h $(includedir)/IceUtil/IceUtil.h $(includedir)/IceUtil/AbstractMutex.h $(includedir)/IceUtil/Cache.h $(includedir)/IceUtil/CountDownLatch.h $(includedir)/IceUtil/CtrlCHandler.h $(includedir)/IceUtil/Functional.h $(includedir)/IceUtil/RWRecMutex.h $(includedir)/IceUtil/Thread.h $(includedir)/IceUtil/RecMutex.h $(includedir)/IceUtil/Timer.h $(includedir)/IceUtil/UUID.h $(includedir)/Freeze/Freeze.h $(includedir)/Freeze/Initialize.h $(includedir)/Ice/Ice.h $(includedir)/Ice/Initialize.h $(includedir)/Ice/PropertiesF.h $(includedir)/Ice/LoggerF.h $(includedir)/Ice/StatsF.h $(includedir)/Ice/BuiltinSequences.h $(includedir)/Ice/LocalException.h $(includedir)/Ice/Properties.h $(includedir)/Ice/OutgoingAsync.h $(includedir)/Ice/Logger.h $(includedir)/Ice/LoggerUtil.h $(includedir)/Ice/Stats.h $(includedir)/Ice/Communicator.h $(includedir)/Ice/RouterF.h $(includedir)/Ice/LocatorF.h $(includedir)/Ice/PluginF.h $(includedir)/Ice/ImplicitContextF.h $(includedir)/Ice/ObjectFactory.h $(includedir)/Ice/ObjectAdapter.h $(includedir)/Ice/FacetMap.h $(includedir)/Ice/ServantLocator.h $(includedir)/Ice/IncomingAsync.h $(includedir)/Ice/Process.h $(includedir)/Ice/Application.h $(includedir)/Ice/Connection.h $(includedir)/Ice/Functional.h $(includedir)/Ice/Stream.h $(includedir)/Ice/ImplicitContext.h $(includedir)/Ice/Locator.h $(includedir)/Ice/ProcessF.h $(includedir)/Ice/Router.h $(includedir)/Ice/DispatchInterceptor.h $(includedir)/Ice/Plugin.h $(includedir)/Ice/IconvStringConverter.h $(includedir)/Freeze/EvictorF.h $(includedir)/Freeze/ConnectionF.h $(includedir)/Freeze/Index.h $(includedir)/Freeze/DB.h $(includedir)/Freeze/Transaction.h $(includedir)/Freeze/BackgroundSaveEvictor.h $(includedir)/Freeze/Evictor.h $(includedir)/Freeze/Exception.h $(includedir)/Freeze/TransactionalEvictor.h $(includedir)/Freeze/Map.h $(includedir)/Freeze/Connection.h $(includedir)/Freeze/TransactionHolder.h $(includedir)/Freeze/Catalog.h $(includedir)/Freeze/CatalogData.h
-Filesystem.cpp: Filesystem.ice
-PersistentFilesystem.cpp: PersistentFilesystem.ice
-Filesystem.ice: $(SLICE2CPP) $(SLICEPARSERLIB)
-PersistentFilesystem.ice: $(SLICE2CPP) $(SLICEPARSERLIB)
diff --git a/cpp/demo/book/freeze_filesystem/.gitignore b/cpp/demo/book/freeze_filesystem/.gitignore
deleted file mode 100644
index 7d2b8d0a9ea..00000000000
--- a/cpp/demo/book/freeze_filesystem/.gitignore
+++ /dev/null
@@ -1,13 +0,0 @@
-// Generated by makegitignore.py
-
-// IMPORTANT: Do not edit this file -- any edits made here will be lost!
-client
-server
-Filesystem.cpp
-PersistentFilesystem.cpp
-Filesystem.h
-PersistentFilesystem.h
-db/*
-Grammar.cpp
-Grammar.h
-Scanner.cpp
diff --git a/cpp/demo/book/freeze_filesystem/Client.cpp b/cpp/demo/book/freeze_filesystem/Client.cpp
deleted file mode 100644
index f9ff7944e43..00000000000
--- a/cpp/demo/book/freeze_filesystem/Client.cpp
+++ /dev/null
@@ -1,148 +0,0 @@
-// **********************************************************************
-//
-// 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.
-//
-// **********************************************************************
-
-#include <Ice/Ice.h>
-#include <Filesystem.h>
-
-using namespace std;
-using namespace Filesystem;
-
-// Recursively print the contents of directory "dir" in tree fashion.
-// For files, show the contents of each file. The "depth"
-// parameter is the current nesting level (for indentation).
-
-static void
-listRecursive(const DirectoryPrx & dir, int depth = 0)
-{
- string indent(++depth, '\t');
-
- NodeDescSeq contents = dir->list();
-
- for (NodeDescSeq::const_iterator i = contents.begin(); i != contents.end(); ++i) {
- DirectoryPrx dir = DirectoryPrx::checkedCast(i->proxy);
- FilePrx file = FilePrx::uncheckedCast(i->proxy);
- cout << indent << i->name << (dir ? " (directory):" : " (file):") << endl;
- if (dir) {
- listRecursive(dir, depth);
- } else {
- Lines text = file->read();
- for (Lines::const_iterator j = text.begin(); j != text.end(); ++j)
- cout << indent << "\t" << *j << endl;
- }
- }
-}
-
-class FilesystemClient : public Ice::Application
-{
-public:
-
- FilesystemClient();
- virtual int run(int argc, char* argv[]);
-};
-
-int
-main(int argc, char* argv[])
-{
- FilesystemClient app;
- return app.main(argc, argv, "config.client");
-}
-
-FilesystemClient::FilesystemClient() :
- //
- // Since this is an interactive demo we don't want any signal
- // handling.
- //
- Ice::Application(Ice::NoSignalHandling)
-{
-}
-
-int
-FilesystemClient::run(int argc, char* argv[])
-{
- //
- // Create a proxy for the root directory.
- //
- DirectoryPrx rootDir = DirectoryPrx::checkedCast(communicator()->propertyToProxy("RootDir.Proxy"));
- if(!rootDir)
- {
- cerr << argv[0] << ": invalid proxy" << endl;
- return EXIT_FAILURE;
- }
-
- //
- // Create a file called "README" in the root directory.
- //
- try
- {
- FilePrx readme = rootDir->createFile("README");
- Lines text;
- text.push_back("This file system contains a collection of poetry.");
- readme->write(text);
- cout << "Created README." << endl;
- }
- catch(const NameInUse&)
- {
- //
- // Ignore - file already exists.
- //
- }
-
- //
- // Create a directory called "Coleridge" in the root directory.
- //
- DirectoryPrx coleridge;
- try
- {
- coleridge = rootDir->createDirectory("Coleridge");
- cout << "Created Coleridge." << endl;
- }
- catch(const NameInUse&)
- {
- NodeDesc desc = rootDir->find("Coleridge");
- coleridge = DirectoryPrx::checkedCast(desc.proxy);
- assert(coleridge);
- }
-
- //
- // Create a file called "Kubla_Khan" in the Coleridge directory.
- //
- try
- {
- FilePrx file = coleridge->createFile("Kubla_Khan");
- Lines text;
- text.push_back("In Xanadu did Kubla Khan");
- text.push_back("A stately pleasure-dome decree:");
- text.push_back("Where Alph, the sacred river, ran");
- text.push_back("Through caverns measureless to man");
- text.push_back("Down to a sunless sea.");
- file->write(text);
- cout << "Created Coleridge/Kubla_Khan." << endl;
- }
- catch(const NameInUse&)
- {
- //
- // Ignore - file already exists.
- //
- }
-
- cout << "Contents of filesystem:" << endl;
- listRecursive(rootDir);
-
- //
- // Destroy the filesystem.
- //
- NodeDescSeq contents = rootDir->list();
- for(NodeDescSeq::iterator i = contents.begin(); i != contents.end(); ++i)
- {
- cout << "Destroying " << i->name << endl;
- i->proxy->destroy();
- }
-
- return EXIT_SUCCESS;
-}
diff --git a/cpp/demo/book/freeze_filesystem/Filesystem.ice b/cpp/demo/book/freeze_filesystem/Filesystem.ice
deleted file mode 100644
index b8b5b38d351..00000000000
--- a/cpp/demo/book/freeze_filesystem/Filesystem.ice
+++ /dev/null
@@ -1,61 +0,0 @@
-// **********************************************************************
-//
-// 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.
-//
-// **********************************************************************
-
-module Filesystem
-{
- exception GenericError
- {
- string reason;
- };
- exception PermissionDenied extends GenericError {};
- exception NameInUse extends GenericError {};
- exception NoSuchName extends GenericError {};
-
- interface Node
- {
- idempotent string name();
-
- ["freeze:write"]
- void destroy() throws PermissionDenied;
- };
-
- sequence<string> Lines;
-
- interface File extends Node
- {
- idempotent Lines read();
-
- ["freeze:write"]
- idempotent void write(Lines text) throws GenericError;
- };
-
- enum NodeType { DirType, FileType };
-
- struct NodeDesc
- {
- string name;
- NodeType type;
- Node* proxy;
- };
-
- sequence<NodeDesc> NodeDescSeq;
-
- interface Directory extends Node
- {
- idempotent NodeDescSeq list();
-
- idempotent NodeDesc find(string name) throws NoSuchName;
-
- ["freeze:write"]
- File* createFile(string name) throws NameInUse;
-
- ["freeze:write"]
- Directory* createDirectory(string name) throws NameInUse;
- };
-};
diff --git a/cpp/demo/book/freeze_filesystem/Makefile b/cpp/demo/book/freeze_filesystem/Makefile
deleted file mode 100644
index fd1e1ace7e4..00000000000
--- a/cpp/demo/book/freeze_filesystem/Makefile
+++ /dev/null
@@ -1,50 +0,0 @@
-# **********************************************************************
-#
-# 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.
-#
-# **********************************************************************
-
-top_srcdir = ../../..
-
-CLIENT = client
-SERVER = server
-
-TARGETS = $(CLIENT) $(SERVER)
-
-OBJS = Filesystem.o
-
-COBJS = Client.o
-
-SOBJS = PersistentFilesystem.o \
- PersistentFilesystemI.o \
- Server.o
-
-SRCS = $(OBJS:.o=.cpp) \
- $(COBJS:.o=.cpp) \
- $(SOBJS:.o=.cpp) \
- $(COLOBJS:.o=.cpp)
-
-SLICE_SRCS = Filesystem.ice PersistentFilesystem.ice
-
-include $(top_srcdir)/config/Make.rules
-
-CPPFLAGS := -I. $(READLINE_FLAGS) $(CPPFLAGS)
-SLICE2CPPFLAGS := -I. $(SLICE2CPPFLAGS)
-
-$(CLIENT): $(OBJS) $(COBJS)
- rm -f $@
- $(CXX) $(LDFLAGS) -o $@ $(OBJS) $(COBJS) $(LIBS) $(READLINE_LIBS)
-
-$(SERVER): $(OBJS) $(SOBJS)
- rm -f $@
- $(CXX) $(LDFLAGS) -o $@ $(OBJS) $(SOBJS) $(DB_RPATH_LINK) -lFreeze $(LIBS)
-
-clean::
- -rm -f db/*
- -rm -f Grammar.cpp Grammar.h
- -rm -f Scanner.cpp
-
-include .depend
diff --git a/cpp/demo/book/freeze_filesystem/Makefile.mak b/cpp/demo/book/freeze_filesystem/Makefile.mak
deleted file mode 100644
index 59447d7eeb6..00000000000
--- a/cpp/demo/book/freeze_filesystem/Makefile.mak
+++ /dev/null
@@ -1,57 +0,0 @@
-# **********************************************************************
-#
-# 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.
-#
-# **********************************************************************
-
-top_srcdir = ..\..\..
-
-CLIENT = client.exe
-SERVER = server.exe
-
-TARGETS = $(CLIENT) $(SERVER)
-
-OBJS = Filesystem.obj
-
-COBJS = Client.obj
-
-SOBJS = PersistentFilesystem.obj \
- PersistentFilesystemI.obj \
- Server.obj
-
-SRCS = $(OBJS:.obj=.cpp) \
- $(COBJS:.obj=.cpp) \
- $(SOBJS:.obj=.cpp) \
- $(COLOBJS:.obj=.cpp)
-
-!include $(top_srcdir)/config/Make.rules.mak
-
-CPPFLAGS = -I. -Idummyinclude $(CPPFLAGS) -DWIN32_LEAN_AND_MEAN
-SLICE2CPPFLAGS = -I. $(SLICE2CPPFLAGS)
-
-!if "$(GENERATE_PDB)" == "yes"
-CPDBFLAGS = /pdb:$(CLIENT:.exe=.pdb)
-SPDBFLAGS = /pdb:$(SERVER:.exe=.pdb)
-!endif
-
-$(CLIENT): $(OBJS) $(COBJS)
- $(LINK) $(LD_EXEFLAGS) $(CPDBFLAGS) $(SETARGV) $(OBJS) $(COBJS) $(PREOUT)$@ $(PRELIBS)$(LIBS)
- @if exist $@.manifest echo ^ ^ ^ Embedding manifest using $(MT) && \
- $(MT) -nologo -manifest $@.manifest -outputresource:$@;#1 && del /q $@.manifest
-
-$(SERVER): $(OBJS) $(SOBJS)
- $(LINK) $(LD_EXEFLAGS) $(SPDBFLAGS) $(SETARGV) $(OBJS) $(SOBJS) $(PREOUT)$@ $(PRELIBS)$(LIBS) freeze$(LIBSUFFIX).lib
- @if exist $@.manifest echo ^ ^ ^ Embedding manifest using $(MT) && \
- $(MT) -nologo -manifest $@.manifest -outputresource:$@;#1 && del /q $@.manifest
-
-clean::
- -del /q Filesystem.cpp Filesystem.h
- -del /q PersistentFilesystem.cpp PersistentFilesystem.h
-
-clean::
- -for %f in (db\*) do if not %f == db\.gitignore del /q %f
-
-!include .depend
diff --git a/cpp/demo/book/freeze_filesystem/PersistentFilesystem.ice b/cpp/demo/book/freeze_filesystem/PersistentFilesystem.ice
deleted file mode 100644
index 2895d2f5d14..00000000000
--- a/cpp/demo/book/freeze_filesystem/PersistentFilesystem.ice
+++ /dev/null
@@ -1,36 +0,0 @@
-// **********************************************************************
-//
-// 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.
-//
-// **********************************************************************
-
-#include <Filesystem.ice>
-
-module Filesystem
-{
- class PersistentDirectory;
-
- class PersistentNode implements Node
- {
- string nodeName;
- PersistentDirectory* parent;
- };
-
- class PersistentFile extends PersistentNode implements File
- {
- Lines text;
- };
-
- dictionary<string, NodeDesc> NodeDict;
-
- class PersistentDirectory extends PersistentNode implements Directory
- {
- ["freeze:write"]
- void removeNode(string name);
-
- NodeDict nodes;
- };
-};
diff --git a/cpp/demo/book/freeze_filesystem/PersistentFilesystemI.cpp b/cpp/demo/book/freeze_filesystem/PersistentFilesystemI.cpp
deleted file mode 100644
index 984a4c282e1..00000000000
--- a/cpp/demo/book/freeze_filesystem/PersistentFilesystemI.cpp
+++ /dev/null
@@ -1,277 +0,0 @@
-// **********************************************************************
-//
-// 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.
-//
-// **********************************************************************
-
-#include <PersistentFilesystemI.h>
-
-using namespace std;
-
-//
-// Filesystem::NodeI
-//
-Freeze::EvictorPtr Filesystem::NodeI::_evictor;
-
-Filesystem::NodeI::NodeI()
-#ifdef __SUNPRO_CC
- : _id(Ice::Identity())
-#endif
-{
-}
-
-Filesystem::NodeI::NodeI(const Ice::Identity& id)
- : _id(id)
-{
-}
-
-//
-// Filesystem::FileI
-//
-string
-Filesystem::FileI::name(const Ice::Current&)
-{
- return nodeName;
-}
-
-void
-Filesystem::FileI::destroy(const Ice::Current&)
-{
- parent->removeNode(nodeName);
- _evictor->remove(_id);
-}
-
-Filesystem::Lines
-Filesystem::FileI::read(const Ice::Current&)
-{
- IceUtil::Mutex::Lock lock(*this);
- return text;
-}
-
-void
-Filesystem::FileI::write(const Filesystem::Lines& text, const Ice::Current&)
-{
- IceUtil::Mutex::Lock lock(*this);
- this->text = text;
-}
-
-Filesystem::FileI::FileI()
-{
-}
-
-Filesystem::FileI::FileI(const Ice::Identity& id)
- : NodeI(id)
-{
-}
-
-//
-// Filesystem::DirectoryI
-//
-string
-Filesystem::DirectoryI::name(const Ice::Current& c)
-{
- IceUtil::Mutex::Lock lock(*this);
-
- if(_destroyed)
- {
- throw Ice::ObjectNotExistException(__FILE__, __LINE__, c.id, c.facet, c.operation);
- }
-
- return nodeName;
-}
-
-void
-Filesystem::DirectoryI::destroy(const Ice::Current& c)
-{
- if(!parent)
- {
- throw Filesystem::PermissionDenied("cannot destroy root directory");
- }
-
- NodeDict children;
-
- {
- IceUtil::Mutex::Lock lock(*this);
-
- if(_destroyed)
- {
- throw Ice::ObjectNotExistException(__FILE__, __LINE__, c.id, c.facet, c.operation);
- }
-
- children = nodes;
- _destroyed = true;
- }
-
- //
- // We must iterate over the children outside the synchronization.
- //
- for(NodeDict::iterator p = children.begin(); p != children.end(); ++p)
- {
- p->second.proxy->destroy();
- }
-
- assert(nodes.empty());
-
- parent->removeNode(nodeName);
- _evictor->remove(_id);
-}
-
-Filesystem::NodeDescSeq
-Filesystem::DirectoryI::list(const Ice::Current& c)
-{
- IceUtil::Mutex::Lock lock(*this);
-
- if(_destroyed)
- {
- throw Ice::ObjectNotExistException(__FILE__, __LINE__, c.id, c.facet, c.operation);
- }
-
- NodeDict::const_iterator p;
- NodeDescSeq result;
- for(p = nodes.begin(); p != nodes.end(); ++p)
- {
- result.push_back(p->second);
- }
- return result;
-}
-
-Filesystem::NodeDesc
-Filesystem::DirectoryI::find(const string& name, const Ice::Current& c)
-{
- IceUtil::Mutex::Lock lock(*this);
-
- if(_destroyed)
- {
- throw Ice::ObjectNotExistException(__FILE__, __LINE__, c.id, c.facet, c.operation);
- }
-
- NodeDict::iterator p = nodes.find(name);
- if(p == nodes.end())
- {
- throw NoSuchName(name);
- }
- return p->second;
-}
-
-Filesystem::DirectoryPrx
-Filesystem::DirectoryI::createDirectory(const string& name, const Ice::Current& c)
-{
- IceUtil::Mutex::Lock lock(*this);
-
- if(_destroyed)
- {
- throw Ice::ObjectNotExistException(__FILE__, __LINE__, c.id, c.facet, c.operation);
- }
-
- if(name.empty() || nodes.find(name) != nodes.end())
- {
- throw NameInUse(name);
- }
-
- Ice::Identity id = c.adapter->getCommunicator()->stringToIdentity(IceUtil::generateUUID());
- PersistentDirectoryPtr dir = new DirectoryI(id);
- dir->nodeName = name;
- dir->parent = PersistentDirectoryPrx::uncheckedCast(c.adapter->createProxy(c.id));
- DirectoryPrx proxy = DirectoryPrx::uncheckedCast(_evictor->add(dir, id));
-
- NodeDesc nd;
- nd.name = name;
- nd.type = DirType;
- nd.proxy = proxy;
- nodes[name] = nd;
-
- return proxy;
-}
-
-Filesystem::FilePrx
-Filesystem::DirectoryI::createFile(const string& name, const Ice::Current& c)
-{
- IceUtil::Mutex::Lock lock(*this);
-
- if(_destroyed)
- {
- throw Ice::ObjectNotExistException(__FILE__, __LINE__, c.id, c.facet, c.operation);
- }
-
- if(name.empty() || nodes.find(name) != nodes.end())
- {
- throw NameInUse(name);
- }
-
- Ice::Identity id = c.adapter->getCommunicator()->stringToIdentity(IceUtil::generateUUID());
- PersistentFilePtr file = new FileI(id);
- file->nodeName = name;
- file->parent = PersistentDirectoryPrx::uncheckedCast(c.adapter->createProxy(c.id));
- FilePrx proxy = FilePrx::uncheckedCast(_evictor->add(file, id));
-
- NodeDesc nd;
- nd.name = name;
- nd.type = FileType;
- nd.proxy = proxy;
- nodes[name] = nd;
-
- return proxy;
-}
-
-void
-Filesystem::DirectoryI::removeNode(const string& name, const Ice::Current&)
-{
- IceUtil::Mutex::Lock lock(*this);
-
- NodeDict::iterator p = nodes.find(name);
- assert(p != nodes.end());
- nodes.erase(p);
-}
-
-Filesystem::DirectoryI::DirectoryI() :
- _destroyed(false)
-{
-}
-
-Filesystem::DirectoryI::DirectoryI(const Ice::Identity& id) :
- NodeI(id), _destroyed(false)
-{
-}
-
-//
-// Filesystem::NodeFactory
-//
-Ice::ObjectPtr
-Filesystem::NodeFactory::create(const string& type)
-{
- if(type == "::Filesystem::PersistentFile")
- {
- return new FileI;
- }
- else if(type == "::Filesystem::PersistentDirectory")
- {
- return new DirectoryI;
- }
- else
- {
- assert(false);
- return 0;
- }
-}
-
-void
-Filesystem::NodeFactory::destroy()
-{
-}
-
-//
-// Filesystem::NodeInitializer
-//
-void
-Filesystem::NodeInitializer::initialize(const Ice::ObjectAdapterPtr&,
- const Ice::Identity& id,
- const string& facet,
- const Ice::ObjectPtr& obj)
-{
- NodeIPtr node = NodeIPtr::dynamicCast(obj);
- assert(node);
- const_cast<Ice::Identity&>(node->_id) = id;
-}
diff --git a/cpp/demo/book/freeze_filesystem/PersistentFilesystemI.h b/cpp/demo/book/freeze_filesystem/PersistentFilesystemI.h
deleted file mode 100644
index bdbbea08374..00000000000
--- a/cpp/demo/book/freeze_filesystem/PersistentFilesystemI.h
+++ /dev/null
@@ -1,95 +0,0 @@
-// **********************************************************************
-//
-// 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 PERSISTENT_FILESYSTEM_I_H
-#define PERSISTENT_FILESYSTEM_I_H
-
-#include <PersistentFilesystem.h>
-#include <IceUtil/IceUtil.h>
-#include <Freeze/Freeze.h>
-
-namespace Filesystem
-{
-
-class NodeI : virtual public PersistentNode,
- public IceUtil::AbstractMutexI<IceUtil::Mutex>
-{
-public:
-
- static Freeze::EvictorPtr _evictor;
-
-protected:
-
- NodeI();
- NodeI(const Ice::Identity&);
-
-public:
-
- const Ice::Identity _id;
-};
-typedef IceUtil::Handle<NodeI> NodeIPtr;
-
-class FileI : virtual public PersistentFile,
- virtual public NodeI
-{
-public:
-
- virtual std::string name(const Ice::Current&);
- virtual void destroy(const Ice::Current&);
-
- virtual Lines read(const Ice::Current&);
- virtual void write(const Lines&, const Ice::Current&);
-
- FileI();
- FileI(const Ice::Identity&);
-};
-
-class DirectoryI : virtual public PersistentDirectory,
- virtual public NodeI
-{
-public:
-
- virtual std::string name(const Ice::Current&);
- virtual void destroy(const Ice::Current&);
-
- virtual NodeDescSeq list(const Ice::Current&);
- virtual NodeDesc find(const std::string&, const Ice::Current&);
- virtual DirectoryPrx createDirectory(const std::string&, const Ice::Current&);
- virtual FilePrx createFile(const std::string&, const Ice::Current&);
- virtual void removeNode(const std::string&, const Ice::Current&);
-
- DirectoryI();
- DirectoryI(const Ice::Identity&);
-
-private:
-
- bool _destroyed;
-};
-
-class NodeFactory : virtual public Ice::ObjectFactory
-{
-public:
-
- virtual Ice::ObjectPtr create(const std::string&);
- virtual void destroy();
-};
-
-class NodeInitializer : virtual public Freeze::ServantInitializer
-{
-public:
-
- virtual void initialize(const Ice::ObjectAdapterPtr&,
- const Ice::Identity&,
- const std::string&,
- const Ice::ObjectPtr&);
-};
-
-}
-
-#endif
diff --git a/cpp/demo/book/freeze_filesystem/README b/cpp/demo/book/freeze_filesystem/README
deleted file mode 100644
index 1eb77d69e29..00000000000
--- a/cpp/demo/book/freeze_filesystem/README
+++ /dev/null
@@ -1,10 +0,0 @@
-This demo presents an alternate implementation of the filesystem
-application, as discussed in the Freeze chapter of the Ice manual.
-
-To run it, start the server in a window:
-
-$ server
-
-Then run the client in a separate window:
-
-$ client
diff --git a/cpp/demo/book/freeze_filesystem/Server.cpp b/cpp/demo/book/freeze_filesystem/Server.cpp
deleted file mode 100644
index 86d7e349e3a..00000000000
--- a/cpp/demo/book/freeze_filesystem/Server.cpp
+++ /dev/null
@@ -1,85 +0,0 @@
-// **********************************************************************
-//
-// 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.
-//
-// **********************************************************************
-
-#include <PersistentFilesystemI.h>
-
-using namespace std;
-using namespace Filesystem;
-
-class FilesystemApp : virtual public Ice::Application
-{
-public:
-
- FilesystemApp(const string& envName) :
- _envName(envName)
- {
- }
-
- virtual int run(int, char*[])
- {
- //
- // Install object factories.
- //
- Ice::ObjectFactoryPtr factory = new NodeFactory;
- communicator()->addObjectFactory(factory, PersistentFile::ice_staticId());
- communicator()->addObjectFactory(factory, PersistentDirectory::ice_staticId());
-
- //
- // Create an object adapter.
- //
- Ice::ObjectAdapterPtr adapter = communicator()->createObjectAdapterWithEndpoints(
- "FreezeFilesystem", "default -p 10000");
-
- //
- // Create the Freeze evictor (stored in the NodeI::_evictor static member).
- //
- Freeze::ServantInitializerPtr init = new NodeInitializer;
- NodeI::_evictor = Freeze::createBackgroundSaveEvictor(adapter, _envName, "evictorfs", init);
-
- adapter->addServantLocator(NodeI::_evictor, "");
-
- //
- // Create the root node if it doesn't exist.
- //
- Ice::Identity rootId = communicator()->stringToIdentity("RootDir");
- if(!NodeI::_evictor->hasObject(rootId))
- {
- PersistentDirectoryPtr root = new DirectoryI(rootId);
- root->nodeName = "/";
- NodeI::_evictor->add(root, rootId);
- }
-
- //
- // Ready to accept requests now.
- //
- adapter->activate();
-
- //
- // Wait until we are done.
- //
- communicator()->waitForShutdown();
- if(interrupted())
- {
- cerr << appName() << ": received signal, shutting down" << endl;
- }
-
- return 0;
- }
-
-private:
-
- string _envName;
-};
-
-int
-main(int argc, char* argv[])
-{
- FilesystemApp app("db");
- return app.main(argc, argv, "config.server");
-}
diff --git a/cpp/demo/book/freeze_filesystem/config.client b/cpp/demo/book/freeze_filesystem/config.client
deleted file mode 100644
index 6f0ba50b98f..00000000000
--- a/cpp/demo/book/freeze_filesystem/config.client
+++ /dev/null
@@ -1,28 +0,0 @@
-#
-# The client reads this property to create the reference to the root
-# "directory" object in the server.
-#
-RootDir.Proxy=RootDir:default -p 10000
-
-#
-# Warn about connection exceptions
-#
-Ice.Warn.Connections=1
-
-#
-# Network Tracing
-#
-# 0 = no network tracing
-# 1 = trace connection establishment and closure
-# 2 = like 1, but more detailed
-# 3 = like 2, but also trace data transfer
-#
-#Ice.Trace.Network=1
-
-#
-# Protocol Tracing
-#
-# 0 = no protocol tracing
-# 1 = trace protocol messages
-#
-#Ice.Trace.Protocol=1
diff --git a/cpp/demo/book/freeze_filesystem/config.server b/cpp/demo/book/freeze_filesystem/config.server
deleted file mode 100644
index 8ee5723e944..00000000000
--- a/cpp/demo/book/freeze_filesystem/config.server
+++ /dev/null
@@ -1,49 +0,0 @@
-#
-# Configure the server endpoints.
-#
-FreezeFilesystem.Endpoints=default -p 10000
-
-#
-# Freeze Map Tracing.
-#
-# 0 = No map activity trace (default).
-# 1 = Trace database open and close.
-# 2 = Also trace iterator and transaction operations, and reference
-# counting of the underlying database.
-#
-Freeze.Trace.Map=1
-
-#
-# Freeze Evictor Tracing.
-#
-# 0 = No evictor activity trace (default).
-# 1 = Trace Ice object and facet creation and destruction, facet
-# streaming time, facet saving time, object eviction (every 50
-# objects) and evictor deactivation.
-# 2 = Also trace object lookups, and all object evictions.
-# 3 = Also trace object retrieval from the database.
-#
-Freeze.Trace.Evictor=2
-
-#
-# Warn about connection exceptions
-#
-Ice.Warn.Connections=1
-
-#
-# Network Tracing
-#
-# 0 = no network tracing
-# 1 = trace connection establishment and closure
-# 2 = like 1, but more detailed
-# 3 = like 2, but also trace data transfer
-#
-#Ice.Trace.Network=1
-
-#
-# Protocol Tracing
-#
-# 0 = no protocol tracing
-# 1 = trace protocol messages
-#
-#Ice.Trace.Protocol=1
diff --git a/cpp/demo/book/freeze_filesystem/db/.gitignore b/cpp/demo/book/freeze_filesystem/db/.gitignore
deleted file mode 100644
index 39af5887579..00000000000
--- a/cpp/demo/book/freeze_filesystem/db/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-# Dummy file, so that git retains this otherwise empty directory.
diff --git a/cpp/demo/book/freeze_filesystem/expect.py b/cpp/demo/book/freeze_filesystem/expect.py
deleted file mode 100755
index bdd92351ebd..00000000000
--- a/cpp/demo/book/freeze_filesystem/expect.py
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/env python
-# **********************************************************************
-#
-# 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.
-#
-# **********************************************************************
-
-import sys, os
-
-try:
- import demoscript
-except ImportError:
- for toplevel in [".", "..", "../..", "../../..", "../../../.."]:
- toplevel = os.path.normpath(toplevel)
- if os.path.exists(os.path.join(toplevel, "demoscript")):
- break
- else:
- raise "can't find toplevel directory!"
- sys.path.append(os.path.join(toplevel))
- import demoscript
-
-import demoscript.Util
-demoscript.Util.defaultLanguage = "C++"
-import demoscript.book.freeze_filesystem
-
-print "cleaning databases...",
-sys.stdout.flush()
-demoscript.Util.cleanDbDir("db")
-print "ok"
-
-server = demoscript.Util.spawn('./server --Ice.PrintAdapterReady')
-server.expect('.* ready')
-client = demoscript.Util.spawn('./client')
-
-demoscript.book.freeze_filesystem.run(client, server)
diff --git a/cpp/demo/book/freeze_filesystem/freezefsC.dsp b/cpp/demo/book/freeze_filesystem/freezefsC.dsp
deleted file mode 100755
index 7b9a1b41e18..00000000000
--- a/cpp/demo/book/freeze_filesystem/freezefsC.dsp
+++ /dev/null
@@ -1,200 +0,0 @@
-# Microsoft Developer Studio Project File - Name="freezefsC" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=freezefsC - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "freezefsC.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "freezefsC.mak" CFG="freezefsC - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "freezefsC - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "freezefsC - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "freezefsC - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /WX /GR /GX /O2 /I "." /I "../../../include" /I "../../../include/stlport" /D "_CONSOLE" /D "_UNICODE" /D "NDEBUG" /D "WIN32_LEAN_AND_MEAN" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 Ice.lib IceUtil.lib setargv.obj /nologo /subsystem:console /pdb:none /machine:I386 /out:"client.exe" /libpath:"../../../lib" /FIXED:no
-# SUBTRACT LINK32 /debug
-
-!ELSEIF "$(CFG)" == "freezefsC - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /WX /Gm /GR /GX /Zi /Od /I "." /I "../../../include" /I "../../../include/stlport" /D "_CONSOLE" /D "_DEBUG" /D "WIN32_LEAN_AND_MEAN" /Fp"Debug/Filesystem.pch" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 Iced.lib IceUtild.lib setargv.obj /nologo /subsystem:console /debug /machine:I386 /out:"client.exe" /pdbtype:sept /libpath:"../../../lib" /FIXED:no
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF
-
-# Begin Target
-
-# Name "freezefsC - Win32 Release"
-# Name "freezefsC - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\Client.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\Filesystem.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\PersistentFilesystem.cpp
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\Filesystem.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\PersistentFilesystem.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\Filesystem.ice
-
-!IF "$(CFG)" == "freezefsC - Win32 Release"
-
-USERDEP__FILES="../../../bin/slice2cpp.exe"
-# Begin Custom Build
-InputPath=.\Filesystem.ice
-
-BuildCmds= \
- ..\..\..\bin\slice2cpp.exe Filesystem.ice
-
-"Filesystem.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"Filesystem.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ELSEIF "$(CFG)" == "freezefsC - Win32 Debug"
-
-USERDEP__FILES="..\..\..\bin\slice2cpp.exe"
-# Begin Custom Build
-InputPath=.\Filesystem.ice
-
-BuildCmds= \
- ..\..\..\bin\slice2cpp.exe Filesystem.ice
-
-"Filesystem.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"Filesystem.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=.\PersistentFilesystem.ice
-
-!IF "$(CFG)" == "freezefsC - Win32 Release"
-
-# Begin Custom Build
-InputPath=.\PersistentFilesystem.ice
-
-BuildCmds= \
- ..\..\..\bin\slice2cpp.exe -I. PersistentFilesystem.ice
-
-"PersistentFilesystem.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"PersistentFilesystem.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ELSEIF "$(CFG)" == "freezefsC - Win32 Debug"
-
-# Begin Custom Build
-InputPath=.\PersistentFilesystem.ice
-
-BuildCmds= \
- ..\..\..\bin\slice2cpp.exe -I. PersistentFilesystem.ice
-
-"PersistentFilesystem.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"PersistentFilesystem.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ENDIF
-
-# End Source File
-# End Group
-# Begin Source File
-
-SOURCE=.\README
-# End Source File
-# End Target
-# End Project
diff --git a/cpp/demo/book/freeze_filesystem/freezefsS.dsp b/cpp/demo/book/freeze_filesystem/freezefsS.dsp
deleted file mode 100755
index a15ea1d0b46..00000000000
--- a/cpp/demo/book/freeze_filesystem/freezefsS.dsp
+++ /dev/null
@@ -1,212 +0,0 @@
-# Microsoft Developer Studio Project File - Name="freezefsS" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=freezefsS - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "freezefsS.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "freezefsS.mak" CFG="freezefsS - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "freezefsS - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "freezefsS - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "freezefsS - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /WX /GR /GX /O2 /I "." /I "../../../include" /I "../../../include/stlport" /D "_CONSOLE" /D "_UNICODE" /D "NDEBUG" /D "WIN32_LEAN_AND_MEAN" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 Freeze.lib Ice.lib IceUtil.lib setargv.obj /nologo /subsystem:console /pdb:none /machine:I386 /out:"server.exe" /libpath:"../../../lib" /FIXED:no
-# SUBTRACT LINK32 /debug
-
-!ELSEIF "$(CFG)" == "freezefsS - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /WX /Gm /GR /GX /Zi /Od /I "." /I "../../../include" /I "../../../include/stlport" /D "_CONSOLE" /D "_DEBUG" /D "WIN32_LEAN_AND_MEAN" /Fp"Debug/Filesystem.pch" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 Freezed.lib Iced.lib IceUtild.lib setargv.obj /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"server.exe" /pdbtype:sept /libpath:"../../../lib" /FIXED:no
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF
-
-# Begin Target
-
-# Name "freezefsS - Win32 Release"
-# Name "freezefsS - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\Filesystem.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\PersistentFilesystem.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\PersistentFilesystemI.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\Server.cpp
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=.\Filesystem.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\FilesystemI.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\PersistentFilesystem.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\PersistentFilesystemI.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# Begin Source File
-
-SOURCE=.\Filesystem.ice
-
-!IF "$(CFG)" == "freezefsS - Win32 Release"
-
-USERDEP__FILES="..\..\..\bin\slice2cpp.exe"
-# Begin Custom Build
-InputPath=.\Filesystem.ice
-
-BuildCmds= \
- ..\..\..\bin\slice2cpp.exe Filesystem.ice
-
-"Filesystem.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"Filesystem.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ELSEIF "$(CFG)" == "freezefsS - Win32 Debug"
-
-USERDEP__FILES="..\..\..\bin\slice2cpp.exe"
-# Begin Custom Build
-InputPath=.\Filesystem.ice
-
-BuildCmds= \
- ..\..\..\bin\slice2cpp.exe Filesystem.ice
-
-"Filesystem.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"Filesystem.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=.\PersistentFilesystem.ice
-
-!IF "$(CFG)" == "freezefsS - Win32 Release"
-
-# Begin Custom Build
-InputPath=.\PersistentFilesystem.ice
-
-BuildCmds= \
- ..\..\..\bin\slice2cpp.exe -I. PersistentFilesystem.ice
-
-"PersistentFilesystem.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"PersistentFilesystem.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ELSEIF "$(CFG)" == "freezefsS - Win32 Debug"
-
-# Begin Custom Build
-InputPath=.\PersistentFilesystem.ice
-
-BuildCmds= \
- ..\..\..\bin\slice2cpp.exe -I. PersistentFilesystem.ice
-
-"PersistentFilesystem.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"PersistentFilesystem.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ENDIF
-
-# End Source File
-# End Group
-# Begin Source File
-
-SOURCE=.\README
-# End Source File
-# End Target
-# End Project