
This ZIP file contains the sample code from Core Jini 1.1 beta, published
by Prentice-Hall PTR (ISBN 013014469X), by W. Keith Edwards.  When
you unzip the file, the contents will be extracted into a directory
called "corejini."  I recommend that you unzip the contents so that
the "corejini" directory is created under C:\ (on Windows) or
/files (on Solaris or other UNIX) for consistency with the examples
in the book.

If you find bugs or misprints in the code, please drop me a note at
kedwards@parc.xerox.com so that I can correct the problem.  If you have
trouble accessing the Prentice-Hall FTP server, please send email to
ftpadmin@prenhall.com.

As corrections are made I'll periodically update the ZIP file.  Check
at the Prentice-Hall FTP site or my web page (address below) for new
versions.

See the book for instructions on building and running the programs here,
as well as code walk-throughs.  This README file contains a list of the
contents of the ZIP file, as well as additional instructions and
explanations where needed.

Happy Hacking!
-Keith


Author Contact Information:
W. Keith Edwards
Xerox Palo Alto Research Center
3333 Coyote Hill Road
Palo Alto, CA  94304
kedwards@parc.xerox.com
http://www.parc.xerox.com/kedwards/


This file was last modified on June 10, 1999.


-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Contents -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

policy

	This is the sample policy file used throughout the book.  I
	recommend that you copy it to C:\policy (on Windows) or
	/files/policy (on Solaris) for consistency with the descriptions
	in the book.

scripts/
  discsvc.bat
  discsvc.sh
  javaspaces.bat
  javaspaces.sh
  lease.bat
  lease.sh
  lookup.bat
  lookup.sh
  mailbox.bat
  mailbox.sh
  txnmgr.bat
  txnmgr.sh

	This directory contains the scripts used to start the various
	Jini services.  The scripts ending in ".bat" are the Windows
	versions, while the scripts ending in ".sh" are the UNIX ones.
	For the UNIX versions, you may need to make the files executable
	before you can use them:
		chmod +x *.sh

chapter5/
  BackendProtocol.java
  HelloWorldClient.java
  HelloWorldClientWithEvents.java
  HelloWorldClientWithLeases.java
  HelloWorldService.java
  HelloWorldServiceBackend.java
  HelloWorldServiceInterface.java
  HelloWorldServiceProxy2.java
  HelloWorldServiceWithLeases.java

chapter6/
  DiscoveryExample.java
  LocatorExample.java
  PrintingListener.java
  Unicast.java

chapter7/
  Capacity.java
  CapacityBean1.java
  CapacityBean2.java
  CapacityBeanBeanInfo.java

	CapacityBean1.java is the non-GUI version of the CapacityBean
	class used in the first bean example of the book.  To use it,
	you must copy it to CapacityBean.java so that it can be
	compiled (since the class it defines is named CapacityBean).
	Likewise, CapacityBean2.java is the GUI version of the bean
	used in the second bean example.  So you must copy it to
	CapacityBean.java if you wish it to be the default version
	that will be found at runtime.

chapter8/
  ServiceWrapper.java

chapter9/
  TunnelService.java
  Federate.java
  ServiceInfoSearcher.java
  ServiceInfoWatcher.java

chapter10/
  AggregationFilter.java
  ClientLookupExample.java
  ClientLookupWithEvents.java
  ClientLookupWithFiltering.java
  DiffListener.java
  ServiceInfoVendorFilter.java
  ServiceInfoVersionFilter.java

chapter11/
  AdminPanel.java
  ArrayListModel.java
  AttrCellRenderer.java
  Browser.java
  DestroyAdminPanel.java
  Discoverer.java
  DiscoveryAdminPanel.java
  JoinAdminPanel.java
  ListBox.java
  ListClickListener.java
  ServiceCellRenderer.java
  StorageLocationAdminPanel.java

chapter12/
  LeaseRenewalService.java
  LeaseService.java
  LeaseServiceProxy.java
  RemoteLeaseRenewalEvent.java
  RemoteLeaseRenewer.java

chapter13/
  SlotClient.java
  SlotProvider.java
  SlotProviderImpl.java
  SlotResult.java

chapter14/
  AdminLeaseService.java
  AttrLeaseService.java
  LeaseAdminProxy.java
  SplashScreen.gif
  SplashScreen.java

	The file SplashScreen.gif contains the "splash screen" image
	used by SplashScreen.java.  Since this file is loaded as a
	Java resource, the GIF file must be placed under the
	corejini/chapter12 directory in your classpath.

chapter15/
  BasicUnicastAdmin.java
  BasicUnicastService.java
  Client.java
  JobRecord.java
  PrintAdmin.java
  PrintAdminPanel.java
  PrintListener.java
  PrintProxy.java
  PrintRecord.java
  PrintService.java
  PrintServiceData.java
  PrintServiceEvent.java
  Printer.java
  RemotePrintAdmin.java
  RemotePrinter.java
  RemoteUnicastAdmin.java

chapter16/
  BasicRegistrationLandlord.java
  EventMailbox.java
  EventMailboxRegistration.java
  HeartbeatClient.java
  HeartbeatGenerator.java
  MailboxClient.java
  Registration.java

chapter17/
  DiscoveryEventEntry.java
  DjinnConsumer.java
  DjinnWatcher.java
  ServiceEventEntry.java
  WatcherEntry.java

chapter18/
  EntryMover.java

chapter19/
  Collector.java
  EmptyMailbox.java

appendixa/
  HelloWorldServiceActivatable.java
  NextNumber.java
  NextNumberClient.java
  NextNumberImpl.java



