The Jini Specifications, 2/e (Paperback)

Jini Technology, The Jini Team

  • 出版商: Addison-Wesley Professional
  • 出版日期: 2000-12-15
  • 定價: USD $39.95
  • 售價: $399
  • 語言: 英文
  • 頁數: 688
  • 裝訂: Paperback
  • ISBN: 0201726173
  • ISBN-13: 9780201726176

立即出貨

買這商品的人也買了...

產品描述


Description

Here is the new Jini 1.1 specification update—supporting the next wave of Jini development, which includes a large role in networking smart devices as embedded technology hooks up to the net. The Jini technology community has grown dramatically—doubling in the last six months to more than 50,000 developers. Adoption of Jini continues to move forward at a rapid pace. Strong industry support comes from Sun, Quantum, Motorola, Ford, and other companies. The US Department of Defense is using Jini in its Tactical Operations Centers and the US Navy is incorporating Jini into its next generation ship computing architecture. Built on top of a Java software infrastructure, Jini technology enables all types of digital devices to work together, linking printers, faxes, and desktop computers. The technology is ideal for building the home-based networks that are now emerging: entertainment systems, smart houses, cars, and hand-held devices. The new 1.1 specification includes advances in helper utilities and services, enabling developers to speed up development.

Back to Top


Appropriate Courses

Java--Intermediate Programming.

Back to Top


Features

  • The authors are the leading Jini architects, and each has an area of expertise they bring to the material. They are involved in the community process (similar to a standards process).
  • 1.1 beta was released in May 2000, and the final 1.1 is due in August 2000. This book covers the final 1.1.
Back to Top


Table Of Contents

1 Overview and Examples.

1. Overview.
Goals.
Architecture.
What the Jini Architecture Depends Upon.
The Value of a Proxy.
The Lookup Service.
Attributes.
Membership Management.
Lookup Groups.
Lookup Service Compared to Naming/Directory Services.

Conclusion. Notes on the Example Code.
Package Structure.


2. Writing a Client.
The MessageStream Interface.
The Client.
In Conclusion.

3. Writing a Service.
Good Lookup Citizenship.
The JoinManager Utility.

The FortuneStream Service.
The Implementation Design.
Creating the Service.
The Running Service.

The ChatStream Service.
"Service" versus "Server." @BHEADS = Creating the Service.
The Chat Server.
Implementing nextInLine.
Notes on Improving ChatServerImpl.
The Clients.


4. The Rest of This Book.

II. SPECIFICATIONS.

The Jini Architecture Specification.

Introduction.
Goals of the System.
Environmental Assumptions.

System Overview.

Key Concepts.
Services.
Lookup Service.
Java Remote Method Invocation (RMI).
Security.
Leasing.
Transactions.
Events.

Component Overview.
Infrastructure.
Programming Model.
Services.

Service Architecture.
Discovery and Lookup Protocols.
Service Implementation.

An Example.
Registering the Printer Service.
Discovering the Lookup Service.
Joining the Lookup Service.
Optional Configuration.
Staying Alive.

Printing.
Locate the Lookup Service.
Search for Printing Services.
Configuring the Printer.
Requesting That the Image Be Printed.
Registering for Notification.
Receiving Notification.

Dependencies.

Discovery and Join.

Terminology.
Host Requirements.
Protocol Stack Requirements for IP Networks.

Protocol Overview.
Discovery in Brief.
Groups.
The Multicast Request Protocol.
The Multicast Announcement Protocol.
The Unicast Discovery Protocol.


The Discovery Protocols.

Protocol Roles.
The Multicast Request Protocol.
Protocol Participants.
The Multicast Request Service.
Request Packet Format.
The Multicast Response Service.

Discovery Using the Multicast Request Protocol.
Steps Taken by the Discovering Entity.
Steps Taken by the Multicast Request Server.
Handling Responses from Multiple Djinns.

The Multicast Announcement Protocol.
The Multicast Announcement Service.
The Protocol.

Unicast Discovery.
The Protocol.
Request Format.
Response Format.


The Join Protocol.

Persistent State.
The Join Protocol.
Initial Discovery and Registration.
Lease Renewal and Handling of Communication Problems.
Making Changes and Performing Updates.
Joining or Leaving a Group.


Network Issues.

Properties of the Underlying Transport.
Limitations on Packet Sizes.

Bridging Calls to the Discovery Request Service.
Limiting the Scope of Multicasts.
Using Multicast IP as the Underlying Transport.
Address and Port Mappings for TCP and Multicast UDP.
LookupLocator Class.
Jini Technology URL Syntax.
Serialized Form.
Entry.
Entries and Templates.
Operations.
Entry.
Serializing Entry Objects.
UnusableEntryException.
Templates and Matching.
Distributed Leasing.
Leasing and Distributed Systems.
Goals and Requirements.

Basic Leasing Interfaces.

Characteristics of a Lease.
Basic Operations.
Leasing and Time.
Serialized Forms.
Example Supporting Classes.
A Renewal Class.
A Renewal Service.
Distributed Events.
Distributed Events and Notifications.
Goals and Requirements.

The Basic Interfaces.

Entities Involved.
Overview of the Interfaces and Classes.
Details of the Interfaces and Classes.
The RemoteEventListener Interface.
The RemoteEvent Class.
The UnknownEventException.
An Example EventGenerator Interface.
The EventRegistration Class.

Sequence Numbers, Leasing and Transactions.
Serialized Forms.

Third-Party Objects.

Store-and-Forward Agents.
Notification Filters.
Notification Multiplexing.
Notification Demultiplexing.

Notification Mailboxes.
Compositionality.
Integration with JavaBeans Components.
Differences with the JavaBeans Component Event Model.
Converting Distributed Events to JavaBeans Component Events.
Transaction.
Introduction.
Model and Terms.
Distributed Transactions and ACID Properties.
Requirements.
The Two-Phase Commit Protocol.
Starting a Transaction.
Starting a Nested Transaction.
Joining a Transaction.
Transaction States.
Completing a Transaction: The Client's View.
Completing a Transaction: A Participant's View.
Completing a Transaction: The Manager's View.
Crash Recovery.
The Roll Decision.

Durability.
Default Transaction Semantics.
Transaction and NestableTransaction Interfaces.
TransactionFactory Class.
ServerTransaction and NestableServerTransaction Classes.
CannotNestException Class.
Semantics.
Serialized Forms.
Lookup Service.
Introduction.
The Lookup Service Model.
Attributes.
The ServiceRegistrar.
ServiceID.
ServiceItem.
ServiceTemplate and Item Matching.
Other Supporting Types.
ServiceRegistrar.
ServiceRegistration.
Serialized Forms.
US Introduction to Helper Utilities and Services.
Summary.
Terminology.
Terms Related to Discovery and Join.
Jini Clients and Services.
Helper Service.
Helper Utility.
Managed Sets.
What Exceptions Imply about Future Behavior.
Unavailable Lookup Services.
Discarding a Lookup Service.
Active Communication Discarded Event.
Active No-Interest Discarded Event.
Passive Communication Discarded Event.
Passive No-Interest Discarded Event.
Changed Event.
Remote Objects, Stubs, and Proxies.

Activation.
Introduction to the Helper Utilities.
The Discovery Utilities.
The DiscoveryManagement Interface.
The DiscoveryGroupManagement Interface.
The DiscoveryLocatorManagement Interface.
The LookupDiscovery Helper Utility.
The LookupLocatorDiscovery Helper Utility.
The LookupDiscoveryManager Helper Utility.
The Constants Class.
The OutgoingMulticastRequest Utility.
The IncomingMulticastRequest Utility.
The OutgoingMulticastAnnouncement Utility.
The IncomingMulticastAnnouncement Utility.
The OutgoingUnicastRequest Utility.
The IncomingUnicastRequest Utility.
The OutgoingUnicastResponse Utility.
The IncomingUnicastResponse Utility.

The Lease Utilities.
The LeaseRenewalManager Helper Utility.

The Join Utilities.
The JoinManager Helper Utility.

The Service Discovery Utilities.
The ServiceDiscoveryManager Helper Utility.

Introduction to the Helper Services.
The Lookup Discovery Service.
The Lease Renewal Service.
The Event Mailbox Service.
Dependencies.
Jini Discovery Utilities Specification.
Introduction.
Dependencies.
The Discovery Management Interfaces.
Overview.
Other Types.
The DiscoveryManagement Interface.
The Semantics.

The DiscoveryGroupManagement Interface.
The Semantics.

The DiscoveryLocatorManagement Interface.
The Semantics.

Supporting Interfaces and Classes.
The DiscoveryListener Interface.
The DiscoveryChangeListener Interface.
The DiscoveryEvent Class.

Serialized Forms.
LookupDiscovery Utility.
Other Types.
The Interface.
The Semantics.
Supporting Interfaces and Classes.
The DiscoveryManagement Interfaces.
Security and Multicast Discovery: The DiscoveryPermission Class.

Serialized Forms.
The LookupLocatorDiscovery Utility.
Overview.
Other Types.
The Interface.
The Semantics.
Supporting Interfaces.
The DiscoveryManagement Interfaces.

The LookupDiscoveryManager Utility.
Overview.
Other Types.
The Interface.
The Semantics.
Supporting Interfaces and Classes.
The DiscoveryManagement Interfaces.
Security and Multicast Discovery: The DiscoveryPermission Class.

Low-Level Discovery Protocol Utilities.
The Constants Class.
Overview.
Other Types.
The Class Definition.
The Semantics.

The OutgoingMulticastRequest Utility.
Overview.
Other Types.
The Interface.
The Semantics.

The IncomingMulticastRequest Utility.
Overview.
Other Types.
The Interface.
The Semantics.

The OutgoingMulticastAnnouncement Utility.
Overview.
Other Types.
The Interface.
The Semantics.

The IncomingMulticastAnnouncement Utility.
Overview.
Other Types.
The Interface.
The Semantics.

The OutgoingUnicastRequest Utility.
Overview.
Other Types.
The Interface.
The Semantics.

The IncomingUnicastRequest Utility.
Overview.
Other Types.
The Interface.
The Semantics.

The OutgoingUnicastResponse Utility.
Overview.
Other Types.
The Interface.
The Semantics.

The IncomingUnicastResponse Utility.
Overview.
Other Types.
The Interface.
The Semantics.

EU Jini Entry Utilities Specification.
Entry Utilities.
AbstractEntry.
Serialized Form.
Jini Lease Utilities Specification.
Introduction.
The LeaseRenewalManager.
Other Types.
The Interface.
The Semantics.
Supporting Interfaces and Classes.
The LeaseListener Interface.
The Semantics.

The DesiredExpirationListener Interface.
The Semantics.

The LeaseRenewalEvent Class.
The Semantics.

Serialized Forms.
Jini Join Utilities Specification.
Introduction.
The JoinManager.
Other Types.
The Interface.
The Semantics.
Supporting Interfaces and Classes.
The DiscoveryManagement Interface.
The ServiceIDListener Interface.
Jini Service Discovery Utilities Specification.
Introduction.
The ServiceDiscoveryManager.
The Object Types.
The Interface.
The Semantics.
The Methods.
The Constructor.
The createLookupCache Method.
The lookup Method.
The getDiscoveryManager Method.
The getLeaseRenewalManager Method.
The terminate Method.

Defining Service Equality.
Exporting RemoteEventListener Objects.
Supporting Interfaces and Classes.
The DiscoveryManagement Interface.
The ServiceItemFilter Interface.
The Semantics.

The ServiceDiscoveryEvent Class.
The Semantics.

The ServiceDiscoveryListener Interface.
The Semantics.

The LookupCache Interface.
The Semantics.

Jini Lookup Discovery Service.
Introduction.
Goals and Requirements.
Other Types.
The Interface.
The Semantics.
Registration Semantics.
Event Semantics.
Leasing Semantics.
Supporting Interfaces and Classes.
The LookupDiscoveryRegistration Interface.
The Semantics.

The RemoteDiscoveryEvent Class.
The Semantics.
Serialized Forms.

The LookupUnmarshalException Class.
The Semantics.
Serialized Forms.

LS Jini Lookup Attribute Schema Specification.
Introduction.
Terminology.
Design Issues.
Dependencies.
Human Access to Attributes.
Providing a Single View of an Attribute's Value.
JavaBeans Components and Design Patterns.
Allowing Display and Modification of Attributes.
Using JavaBeans Components with Entry Classes.

Associating JavaBeans Components with Entry Classes.
Supporting Interfaces and Classes.
Generic Attribute Classes.
Indicating User Modifiability.
Basic Service Information.
More Specific Information.
Naming a Service.
Adding a Comment to a Service.
Physical Location.
Status Information.
Serialized Forms.
Jini Lease Renewal Service Specification.
Introduction.
Goals and Requirements.
Other Types.
The Interface.
Events.
Serialized Forms.
Jini Event Mailbox Service Specification.
Introduction.
Goals and Requirements.
Other Types.
The Interface.
The Semantics.
Supporting Interfaces and Classes.
The Semantics.
JavaSpaces Service Specification.
Introduction.
The JavaSpaces Application Model and Terms.
Distributed Persistence.
Distributed Algorithms as Flows of Objects.

Benefits.
JavaSpaces Technology and Databases.
JavaSpaces System Design and Linda Systems.
Goals and Requirements.
Dependencies.
Operations.
Entries.
net.jini.space.JavaSpace.
InternalSpaceException.

write.
readIfExists and read.
takeIfExists and take.
snapshot.
notify.
Operation Ordering.
Serialized Form.
Transactions.
Operations under Transactions.
Transactions and ACID Properties.
Further Reading.
Linda Systems.
The Java Platform.
Distributed Computing.
Jini Device Architecture Specification.
Introduction.
Requirements from the Jini Lookup Service.
Basic Device Architecture Examples.
Devices with Resident Java Virtual Machines.
Devices Using Specialized Virtual Machines.
Clustering Devices with a Shared Virtual Machine (Physical Option).
Clustering Devices with a Shared Virtual Machine (Network Option).
Jini Technology-Enabled Software Services over the Internet Inter-Operability Protocol.

III. SUPPLEMENTAL MATERIAL.


Jini Technology Glossary.

Appendix A: A Note on Distributed Computing.
Introduction.
Terminology.
The Vision of Unified Objects.
Deja Vu All Over Again.
Local and Distributed Computing.
Latency.
Memory Access.
Partial Failure and Concurrency.
The Myth of "Quality of Service." Lessons from NFS.
Taking the Difference Seriously.
A Middle Ground.
References.
Observations for This Reprinting.

Appendix B: Example Code.
Index. 0201726173T04062001


Back to Top