23
Jini™Technology Glossary Version 1.1 October 2000

Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

Jini™TechnologyGlossary

Version 1.1October 2000

Page 2: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

ii

ologyore

ou anymakeit http://

registered

Copyright © 2000 Sun Microsystems, Inc.901 San Antonio Road, Palo Alto, CA 94303 USA.All rights reserved.

Sun Microsystems, Inc. has intellectual property rights (“Sun IPR”) relating to implementations of the techndescribed in this publication (“the Technology”). In particular, and without limitation, Sun IPR may include one or mpatents or patent applications in the U.S. or other countries. Your limited right to use this publication does not grant yright or license to Sun IPR nor any right or license to implement the Technology. Sun may, in its sole discretion,available a limited license to Sun IPR and/or to the Technology under a separate license agreement. Please viswww.sun.com/software/communitysource/.

Sun, the Sun logo, Sun Microsystems, Jini, the Jini logo, JavaSpaces, Java, and JavaBeans are trademarks ortrademarks of Sun Microsystems, Inc. in the United States and other countries.

THIS SPECIFICATION IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS ORIMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FIT-NESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

THIS SPECIFICATION COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS.CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE CHANGES WILL BEINCORPORATED IN NEW EDITIONS OF THE SPECIFICATION. SUN MICROSYSTEMS, INC. MAY MAKEIMPROVEMENTS AND/OR CHANGES IN ANY TECHNOLOGY, PRODUCT, OR PROGRAM DESCRIBED INTHIS SPECIFICATION AT ANY TIME.

Page 3: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

Gloss

y

iva-hine

ate

ifiesmata

Jini™ Technology Glossar

activationThe process of transforming a passive object into an active object. Acttion requires that an object be associated with a Java™ virtual mac(JVM)1, which may entail loading the class for that object into aJVM andthe object restoring its persistent state (if any). (Java™ Remote MethodInvocation Specification, Section 7.1.1)

activatable serviceA Jini service that has a back end implemented with the ability to activand deactivate. (Introduction to Helper Utilities and Services,Section US.2.9, “Activation”) (See alsoJini technology-enabled service(Jini service))

activation descriptorA class instance that holds an activatable object’s group identifier (specthe JVM in which it is activated), the object’s class name, a location frowhere to load the object’s class code, and object-specific initialization din marshalled form. (Java™ Remote Method Invocation Specification,Sec-tion 7.2)

activation groupThe entity that receives a request to activate an object in theJVM andreturns the activated object back to the activator. (Java™ Remote MethodInvocation Specification,Section 7.2) A separateJVM is spawned for eachactivation group. (Section 7.4.7)

1 The terms “Java virtual machine” or “JVM” mean a virtual machine for the Java platform.

479 ary

Page 4: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

480

for-cti-

nec-

e

sac-in

and-

ad-

t

activatorThe entity that supervises activation by being both (1) a database of inmation that maps activation identifiers to the information necessary to avate an object and (2) a manager ofJVMs, that starts up aJVM (whennecessary) and forwards requests for object activation (along with theessary information) to the correct activation group inside a remoteJVM.There is usually only one activator per host, started byrmid. (Java™Remote Method Invocation Specification, Section 7.2)

active discardThe process of an entity itself discarding a reference to lookup service. (JiniDiscovery Utilities Specification,Section DU.2.5.1, “The Semantics”) (Sealsopassive discard)

active objectA remote object that is instantiated and exported in aJVM on some sys-tem.(Java™ Remote Method Invocation Specification, Section 7.1.1)

ancestor transactionA transaction that is the parent of a specific nested transaction (a trantion in which all its operations are contained, or executed, from withanother transaction), or the parent of such a parent, recursively (a grparent, a great-grandparent, and so on). (The Jini Technology Core Plat-form Specification, Section TX.3.5 “Semantics”)

attribute setA strongly-typed set of fields in a service item (represented bynet.jini.core.entry.Entry) that describes the service or provide seconary interfaces to the service. A single attribute is a public field of anEntry.(The Jini Technology Core Platform Specification,Section LU.1.2“Attributes”)

back end, back-end serverSeeremote object.

bad invocation exceptionAn exception that implies that any retries of thesamemethod with thesamearguments that are expected to return thesamevalue will also fail. For a listof exceptions that fall into this category, please seeIntroduction to HelperUtilities and Services, Section US.2.6, “What Exceptions Imply abouFuture Behavior”.

Page 5: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 481

ill

s ins in

thennel.

Jini

he

bad object exceptionAn exception that implies that any further operations on that object walso fail. For a list of exceptions that fall into this category, please seeIntro-duction to Helper Utilities and Services, Section US.2.6, “What ExceptionsImply about Future Behavior”.

changed eventAn event related to the discarded event that notifies the entity of changethe contents of the member groups of one or more of the lookup servicethe managed set. (Jini Discovery Utilities Specification,Section DU.2.6.2,“The DiscoveryChangeListener Interface”) (See alsodiscarded event)

channelThe abstraction for a conduit between two address spaces in theRMI trans-port layer. As such, it is responsible for managing connections betweenlocal address space and the remote address space for which it is a cha(Java™ Remote Method Invocation Specification, Section 3.5)

client-like entityA term that may be used, in general, when referring to Jini clients andservices that act as clients. (Introduction to Helper Utilities and Services,Section US.2.2, “Jini Clients and Services”) (See alsoJini technology-enabled client (Jini client))

connectionThe stream-oriented (Java™ Remote Method Invocation Specification,Sec-tion 3.4) abstraction for transferring data (performing input/output) in tRMI transport layer. (Section 3.5)

deactivationThe process of transforming an active object into a passive object. (Intro-duction to Helper Utilities and Services, Section US.2.9, “Activation”) (Seealsoactivation)

definite exceptionAn exception that is indicative of a permanent failure. (Jini Lease UtilitiesSpecification, Section LM.4, “The Semantics”)

Page 6: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

482

he

hed,m the

kup

r a

pono

theefer-

ter-

desired expirationA value (in milliseconds) that represents when the client would like tlease to expire. (Jini Lease Utilities Specification,Section LM.4, “TheSemantics”) (See alsoremaining desired duration)

desired expiration reached eventAn event that is generated when a lease’s desired expiration is reacwhich signals that the lease renewal manager has removed a lease fromanaged set without an explicit request by the client. (Jini Lease UtilitiesSpecification,Section LM.4, “The Semantics”) (See alsorenewal failureevent)

discarded lookup serviceA lookup service is said to be discarded when an already discovered looservice is removed from the managed set of lookup services. (Introductionto Helper Utilities and Services, Section US.2.8, “Discarding a LookupService”) (See alsodiscarded event)

discarded eventAn event sent to notify all of an entity’s discovery listeners, whenevelookup service is discarded by a utility employed by the entity. (Introduc-tion to Helper Utilities and Services, Section US.2.8, “Discarding a LookupService”) (See alsochanged event) (See alsoactive discard) (See alsodis-covered event)

discovered eventAn event sent from a lookup discovery service to a registered listener udiscovery of a lookup service. (Jini Lookup Discovery Service) (See alsdiscarded event)

discovering entityOne or more cooperating objects in the Java programming language onsame host that are about to start, or are in the process of, obtaining rences to one or more Jini lookup services. (The Jini Technology Core Plat-form Specification,Section DJ.1.1 “Terminology”) (See alsogroupdiscovery)

discovery utilityAn object that implements one or more of the discovery management infaces to perform and manage the entity’s discovery duties. (Jini Discovery

Page 7: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 483

-

nernt

r, but

logy

iion,

les

-arame-return

thatself.

ns-be

li-. It

Utilities Specification,Section DU.2.6.1, “The DiscoveryListener Interface”)

distributed event adapterAn event adapter in which the event generator and the event listeinstances may exist in different virtual machines, possibly on differehosts. The distributed event adapter is at least a remote event listenemay also be a remote event generator (seelocal event, remote event). (TheJini Technology Core Platform Specification,Section EV.3 “Third-PartyObjects”)

djinn (pronounced “gin”)The group of devices, resources, and users joined by the Jini technoinfrastructure. (The Jini Technology Core Platform Specification,SectionLU.1.1 “The Lookup Service Model”) This group, controlled by the Jintechnology infrastructure, agrees on basic notions of trust, administratidentification, and policy.

dynamic class loadingThe capability of the Java application environment to download fi(classes for the Java platform, audio, and images) from anHTTP server atruntime if they are not already available to the clientJVM. Dynamic classloading may be used by theRMI runtime to download: stub classes; skeleton classes; classes that are passed as subtypes of declared method pters; and classes that are passed as subtypes of declared methodtypes. (Seedynamic stub loading)

dynamic stub loadingA subset of dynamic class loading, used to support client-side stubsimplement the same set of remote interfaces as a remote object it(Java™ Remote Method Invocation Specification, Section 3.1)

endpointThe abstraction used to denote an address space orJVM in the RMI trans-port layer. In the implementation an endpoint can be mapped to its traport. That is, given an endpoint, a specific transport instance canobtained. (Java™ Remote Method Invocation Specification, Section 3.5)

entityA general term that may refer to a discovering entity, a joining entity, a cent-like entity, a service, or some combination of these types of entities

Page 8: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

484

ed.

plat-

licesen ofringare

n thee notngerest

e ofose

thisndi-(

ype(2)

ca-er-

should be clear from the context what type of entity is being discuss(Introduction to Helper Utilities and Services, Section US.2.2, “Jini Clientsand Services”)

entryA typed group of object references, expressed as a class for the Javaform that implements thenet.jini.core.entry.Entry interface. Entryfields must all be references toSerializable objects. (Jini™ Entry Specifi-cation,Section EN.1) An entry is a class that contains a number of pubfields of object type. Services provide concrete values for each of thfields; each value acts as an attribute. Entries thus provide aggregatioattributes into sets; a service may provide several entries when registeitself in the lookup service, which means that attributes on each serviceprovided in a set of sets. (Jini Lookup Attribute Schema Specification,Section LS.1, “Introduction” LS.1)

eventSomething that happens in an object, corresponding to some change iabstract state of the object. Events are abstract occurrences that ardirectly observed outside of an object, and may not correspond to a chain the actual state of the object that advertises the ability to register intein the event. (The Jini Technology Core Platform Specification,SectionEV.2.1 “Entities Involved”)

event generatorAn object that has some kinds of abstract state changes that might binterest to other objects and allows other objects to register interest in thevents. This is the object that will generate notifications when events ofkind occur, sending those notifications to the event listeners that were icated as targets in the calls that registered interest in that kind of event.TheJini Technology Core Platform Specification,Section EV.2.1 “EntitiesInvolved”)

event listenerAn object that has an interest in being notified when a particular event toccurs. The event listener (1) implements the appropriate interface andregisters with an event generator. (See alsoremote event listener)

event mailbox serviceA helper service that can be employed by entities to store event notifitions on their behalf. When an entity registers with the event mailbox s

Page 9: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 485

ntil

o

allslass

tic

as aodtingtent

beinges

er

isver-

lso

vice, that service will collect events intended for the registered entity uthe entity initiates delivery of the events. (Introduction to Helper Utilitiesand Services, Section US.4.3, “The Event Mailbox Service”) (See alsnotification mailbox)

export, -ed, -ingThe process of making a remote object available to accept incoming con a specific port. An object can be exported (1) if the object is a subcof java.rmi.server.UnicastRemoteObject, through the constructor; (2) ifthe object is a subclass ofjava.rmi.activation.Activatable, throughthe constructor; (3) by passing the object to the staticexportObject

method of UnicastRemoteObject (Java™ Remote Method InvocationSpecification,Section 5.3.1); or (4) by passing the object to the staexportObject method ofActivatable. (Section 7.3)

faulting remote referenceA faulting remote reference to a remote object, sometimes referred tofault block, “faults in” the active object’s reference upon the first methinvocation to the object executed via the faulting reference. Each faulreference, contained in the remote object’s stub, holds both a persisobject handle (ajava.rmi.activation.ActivationID) and a transientremote reference to the target remote object. (Java™ Remote Method Invo-cation Specification, Section 7.1.2)

filterA non-remote object that defines additional matching criteria that willapplied when searching for the entity’s services of interest. This filterfacility is particularly useful to entities that wish to extend the capabilitiof the standard template-matching scheme. (Introduction to Helper Utilitiesand Services, Section US.3.4.1, “The ServiceDiscoveryManager HelpUtility”)

front end, front-end proxySeeproxy.

groupAn organization of lookup services into a logical set. A lookup servicesaid to be a member of (or to belong to) a group, while a service may adtise itself to one or more groups. (Introduction to Helper Utilities and Ser-vices, Section US.2.1, “Terms Related to Discovery and Join”) (See alocator)

Page 10: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

486

aste or

ee

cesr ser-thein

iceationser-

the

ted

An

nly

oba-thes be

the

group discoveryThe discovery process in which a discovering entity employs the multicdiscovery protocol to discover lookup services that are members of onmore groups belonging to a set of groups. (Introduction to Helper Utilitiesand Services, Section US.2.1, “Terms Related to Discovery and Join”) (Salsolocator discovery)

helper serviceA Jini service that can be registered with any number of lookup serviand whose methods can execute on remote hosts. In general, a helpevice should be of use to more than one type of entity participating inJini application environment and should provide a significant reductiondevelopment complexity for developers of such entities. A helper servconsists of an interface or set of interfaces and associated implementthat encapsulates behavior that is either required or highly desirable invices that adhere to the Jini technology programming model. (Introductionto Helper Utilities and Services, Section US.2.3, “Helper Service”)

helper utilityHelper utilities are programming components that can be used duringconstruction of Jini services and/or clients. Helper utilities arenot remoteand do not register with a lookup service. Helper utilities are instantialocally by entities wishing to employ them. (Introduction to Helper Utili-ties and Services, Section US.2.4, “Helper Utility”)

hostA hardware device that may be connected to one or more networks.individual host may house one or moreJVMs. (The Jini Technology CorePlatform Specification, Section DJ.1.2 “Host Requirements”)

idempotentA method that is idempotent can be called multiple times and produce othe result as though it were called only a single time.

indefinite exceptionAn exception that implies no new assertions can be made about the prbility of success of any future invocation of that method, regardless ofarguments used or return value expected, nor can any new assertionmade about the probability of success of anyother operation on the sameobject. For a list of exceptions that fall into this category, please see

Page 11: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 487

s an

to aeth-nlyice.

ofred

rvice

theand

ser-

er-

Introduction to Helper Utilities and Services, Section US.2.6, “WhatExceptions Imply about Future Behavior”.

inferior transactionThe inverse of the transactional ancestor relationship: Transaction iinferior of if and only if is an ancestor of . (™The Jini Technol-ogy Core Platform Specification, Section TX.3.5 “Semantics”)

Jini technology-enabled client (Jini client)A discovering entity that can retrieve a service (or a remote referenceservice) registered with a discovered lookup service, and invoke the mods of the service to meet the entity’s requirements. An entity that acts oas a client never registers with (requests residency in) a lookup serv(Introduction to Helper Utilities and Services, Section US.2.2, “Jini Clientsand Services”)

Jini technology-enabled service (Jini service)Both a discovering and a joining entity containing methods that may beuse to some other Jini client or service, and that registers with discovelookup services to provide access to those methods. Note that a Jini secan also act as a Jini client. (Introduction to Helper Utilities and Services,Section US.2.2, “Jini Clients and Services”) (See alsoback end, back-endserver)

joining entityOne or more cooperating objects in the Java programming language onsame host that have just received a reference to the Jini lookup serviceare in the process of obtaining services from, and possibly exportingvices to, a djinn. (The Jini Technology Core Platform Specification,SectionDJ.1.1 “Terminology”)

join protocolThe protocol that allows entities to start communicating usefully with svices in a djinn, through the Jini lookup service. (The Jini Technology CorePlatform Specification, Section DJ.1.3 “Protocol Overview”)

JVMA common abbreviation for “Java virtual machine.”

TiTa Ta Ti

Page 12: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

488

t-n).

, toof

s first,

avese, acan

)s-er.-

esc-

avethehen

lazy activationThe activation mechanism that theRMI system uses, which defers activaing an object until a client’s first use (that is, the first method invocatioLazy activation of remote objects is implemented using afaulting remotereference. (Java™ Remote Method Invocation Specification, Section 7.1.1)

leaseA grant to use a resource, offered by one object in a distributed systemanother object in that system for a certain period of time. The durationthe lease is negotiated by the two objects when access to the resource irequested and given. (The Jini Technology Core Platform SpecificationSection LE.1 “Introduction”) A lease ensures that the lease holder will haccess to some resource for a period of time. During the period of a lealease can be cancelled by the entity holding the lease. A lease holderrequest that a lease be renewed, or a lease can expire. (The Jini TechnologyCore Platform Specification,Section LE.2.1 “Characteristics of a Lease”In the current implementation ofRMI, a lease term is not negotiated, adescribed byThe Jini Technology Core Platform Specification, “Distributed Leasing”;the lease term is mandated by the implementation servAnother difference is that inRMI there is no notion of explicit lease cancellation; lease cancellation is implicit when a remote reference becomunreferenced by a specific client. (Java™ Remote Method Invocation Speification, Section 9.1)

lease grantorThe object granting access to a resource for some period of time. (The JiniTechnology Core Platform Specification,Section LE.2 “Basic LeasingInterfaces”)

lease holderThe object asking for the leased resource. (The Jini Technology Core Plat-form Specification, Section LE.2 “Basic Leasing Interfaces”)

lease renewal setClients of the renewal service organize the leases they wish to hrenewed into lease renewal sets. A method is provided byLeaseRenewalService interface to create these sets. These sets are tpopulated by methods on the sets themselves. (Jini Lease Renewal ServiceSpecification, Section LR.2, “The Interface”)

Page 13: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 489

s to

n aet up. Onrget

ner,irtual

y

astding

lso

re)

uptity

lease renewal serviceA helper service that can be employed by both Jini clients and serviceperform all lease renewal duties on their behalf. (Introduction to HelperUtilities and Services, Section US.4.2, “The Lease Renewal Service”)

live referenceThe concrete representation of a remote object reference (in theRMI trans-port layer), which consists of an endpoint and an object identifier. Givelive reference for a remote object, a transport can use the endpoint to sa connection to the address space in which the remote object residesthe server side, the transport uses the object identifier to look up the taof the remote call. (Java™ Remote Method Invocation Specification,Sec-tion 3.5)

local eventAn event object that is fired from an event generator to an event listewhere both the generator and the listener instances exist in the same vmachine. (Seeevent, remote event) (The Jini Technology Core PlatformSpecification, Section EV.1.1 “Distributed Events and Notifications”)

locatorAn instance of the classnet.jini.core.discovery.LookupLocator, asdefined in theJini™ Discovery and Join Specification.(Introduction toHelper Utilities and Services, Section US.2.1, “Terms Related to Discoverand Join”) (See alsogroup)

locator discoveryThe discovery process in which a discovering entity employs the unicdiscovery protocol to discover specific lookup services, each corresponto an element in a set of locators. (Introduction to Helper Utilities and Ser-vices, Section US.2.1, “Terms Related to Discovery and Join”) (See agroup discovery)

lookup discovery protocolThe protocol that governs the acquisition of a reference to one (or moinstances of the Jini lookup service. (The Jini Technology Core PlatformSpecification, Section DJ.1.3 “Protocol Overview”)

lookup discovery serviceA helper service that employs the Jini discovery protocols to find lookservices in which an entity has expressed interest and to notify the en

Page 14: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

490

re-ri-

thenis-

-dis-

hoseredre-

cificery.ther

when a previously unavailable lookup service becomes available. (Intro-duction to Helper Utilities and Services, Section US.4.1, “The Lookup Dis-covery Service”)

lookup serviceThe Jini lookup service provides a central registry of service items, repsenting services, available within the djinn. This Jini lookup service is a pmary means for programs to find services within the djinn, and isfoundation for providing user interfaces through which users and admitrators can discover and interact with services in the djinn. (The Jini Tech-nology Core Platform Specification, Section LU.1 “Introduction”)

lookup service groupSeegroup.

manged setWhen the general termmanaged setis used, it should be clear from the context whether groups, locators, lookup services, or leases are beingcussed. (Introduction to Helper Utilities and Services, Section US.2.5,“Managed Sets”)

managed set of groupsEach element of the managed set of groups is a name of a group wmembers are lookup services that the entity wishes to be discovethrough group discovery. The managed set of groups is typically repsented as aString array or aCollection of String elements. (Introduc-tion to Helper Utilities and Services, Section US.2.5, “Managed Sets”)

managed set of locatorsEach element of the managed set of locators corresponds to a spelookup service that the entity wishes to be discovered via locator discovTypically, this set is represented as an array of locators or some oCollection type whose elements are locators. (Introduction to HelperUtilities and Services, Section US.2.5, “Managed Sets”)

managed set of lookup servicesReferences to discovered lookup services. (Introduction to Helper Utilitiesand Services, Section US.2.5, “Managed Sets”)

Page 15: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 491

yto

eterntiler

s as-hehe-

romop-

of aonthe

nt torethery

be

marshal streamsInput/output streams, used by theRMI remote reference layer, that emploobject serializationto enable objects in the Java programming languagebe transmitted between address spaces. (Java™ Remote Method InvocationSpecification, Section 3.3)

marshalled objectA container for an object that allows that object to be passed as a paramin an RMI call, but postpones deserializing the object at the receiver uthe application explicitly requests the object (via a call to the containobject). Theserializableobject contained in theMarshalledObject is seri-alized and deserialized (when requested) with the same semanticparameters passed inRMI calls (Java™ Remote Method Invocation Specification, Section 7.4.8), which means that any remote object in tMarshalledObject is represented by a serialized instance of its stub. Tobject contained by theMarshalledObject may be a remote object, a nonremote object, or an entire graph of remote and non-remote objects.

member groupSeegroup.

multicast radiusRoughly the number of hops beyond which neither multicast requests fthe entity, nor multicast announcements from the lookup service, will pragate. (Jini Discovery Utilities Specification,Section DU.2.6.2, “The Dis-coveryChangeListener Interface”)

notification filterA distributed event adapter that can be used by either the generatornotification or the recipient to intercept notification calls, do processingthose calls, and act in accord with that processing (perhaps forwardingnotification, or even generating new notifications). (The Jini TechnologyCore Platform Specification,Section EV.3.2 “Notification Filters”) This fil-ter may be used as an event multiplexer or demultiplexer.

notification mailboxA distributed event adapter that can be used to store the notifications sean object until such time as the object for which the notifications weintended desires delivery. Such delivery can be in a single batch, withmailbox storing any notifications received after the request for deliveuntil the next request is given. Alternatively, a notification mailbox can

Page 16: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

492

veanythe

ofk ort of

,s-emote

ity.

estjectart

s,

nder,

viewed as a faucet, with notifications turned on (delivering any that haarrived since the notifications were last turned off) and then deliveringsubsequent notifications to an object immediately, until told to holdnotifications. (The Jini Technology Core Platform Specification,SectionEV.3.3 “Notification Mailboxes”) (See alsoevent mailbox service)

object serializationThe system that allows a bytestream to be produced from a graphobjects, sent out of the Java application environment (either saved to dissent over the network) and then used to re-create an equivalent seobjects with the same state. (Java™ Object Serialization SpecificationSection A.1) InRMI, objects transmitted using the object serialization sytem are passed by copy to the remote address space, unless they are robjects, in which case they are passed by reference. (Java™ RemoteMethod Invocation Specification, Section 3.3)

passive discardThe process of a utility discarding a lookup service on behalf of an ent(See alsodiscarded event)

passive objectA remote object that is not yet instantiated (or exported) in aJVM but thatcan be brought into an active state (See alsoactive object). (Java™ RemoteMethod Invocation Specification, Section 7.1.1)

proxyAn intermediary object through which one entity (the client) may requthe invocation of the methods provided by another entity (the remote obor the service). A proxy can be one of a number of different forms: a smproxy, the stub of a remote object, or a strictly local proxy. (Introduction toHelper Utilities and Services, Section US.2.8.6, “Remote Objects, Stuband Proxies”)

pure transactionA transaction in which all access to shared mutable state is performed utransactional control. (The Jini Technology Core Platform SpecificationSection TX.3.5 “Semantics”)

reference listA reference list for a remote object is a list of clientJVMs that hold refer-ences to that remote object. A clientJVM is removed from the object’s ref-

Page 17: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 493

ist-ine

t--

enerventt vir-

omeive(or

ndss

erence list when that client no longer references that object. (Java™Remote Method Invocation Specification, Section 9.1)

registrarSeelookup service.

registryA remote object that maps names to remote objects. Thejava.rmi.Naming

class provides methods for lookup, binding, rebinding, unbinding, and ling the contents of a registry. A registry can be used in a virtual machshared with other server classes or in a standaloneJVM. The methods ofjava.rmi.registry.LocateRegistry may be used to get a registry operaing on a particular host or host and port. (Java™ Remote Method Invocation Specification, Section 6)

remaining desired durationThe desired expiration (of a lease) less the current time. (Jini Lease UtilitiesSpecification,Section LM.4, “The Semantics”) (See alsodesired expira-tion)

remote eventAn object that is passed from an event generator to a remote event listto indicate that an event of a particular kind has occurred. The remote egenerator and the remote event listener instances may exist in differentual machines, possibly on different hosts. (The Jini Technology Core Plat-form Specification, Section EV.2.1 “Entities Involved”)

remote event generatorAn object that is the source of remote events.

remote event listenerAn object implementing thenet.jini.core.event.RemoteEventListenerinterface, which is interested in the occurrence of remote events in sother object. The major function of a remote event listener is to recenotifications of the occurrence of a remote event in some other objectset of objects). (The Jini Technology Core Platform Specification,SectionEV.2.1 “Entities Involved”)

remote interfaceAn interface written in the Java programming language that extejava.rmi.Remote, either directly or indirectly, which declares the method

Page 18: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

494

ect.

cht the

r-

an’tved a

s andr isass.

the

of a remote object. (Java™ Remote Method Invocation Specification,Sec-tion 2.1)

remote method invocation (RMI )The action of invoking a method of a remote interface on a remote obj(Java™ Remote Method Invocation Specification, Section 2.1)

remote objectAn object whose methods can be invoked from anotherJVM, potentially ona different host. An object of this type is described by one or moreremoteinterfaces. (Java™ Remote Method Invocation Specification, Section 2.1)

remote reference layer (RRL)The layer of theRMI system that supports remote reference behavior (suas invocation to a single object or to a replicated object) and carries ousemantics of method invocation. This layer sits between theRMI stub/skel-eton layer and theRMI transport layer. Also handled by the remote refeence layer are the reference semantics for the server. (Java™ RemoteMethod Invocation Specification, Section 3.2)

remote serverSeeremote object.

renewal failure eventAn event that is generated when the renewal manager finds that it crenew a lease, which signals that the lease renewal manager has remolease from the managed set without an explicit request by the client. (JiniLease Utilities Specification,Section LM.4, “The Semantics”) (See alsodesired expiration reached event)

rmicThe stub and skeleton compiler used to generate the appropriate stubskeletons for a specific remote object implementation. The compileinvoked with the package-qualified class name of the remote object clThe class must previously have been compiled successfully. (Java™Remote Method Invocation Specification, Section 5.11)

rmidThe activation system daemon which provides an implementation ofactivation system interfaces. To use activation, you must first runrmid. This

Page 19: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 495

hee

oto-

andon-

nsac-,

pro-lan-

ce. Iter, or, dis-ch

r pro-ade

avet ser-that

theote

is the JVM with which activation descriptions get registered. (Java™Remote Method Invocation Specification, Section 7.2)

rmiregistryThe RMI system command that provides an implementation of tjava.rmi.registry.Registry interface. The rmiregistry, run on a remothost, can be accessed by calling methods of thejava.rmi.Naming class.

semantic transactionA transactionwith specific, associated semantics, as opposed to the prcol specified by theTransactionManager interface, which does not specifytransaction semantics. A semantic transaction is contractual in natureimplies a particular usage pattern, so if a program operates within the cstraints of the contract, assumptions can be safely made about the tration’s behavior or state. (The Jini Technology Core Platform SpecificationSection TX.1.1 “Model and Terms”)

serializableAny data type that may be read fromjava.io.ObjectInputStreams andwritten to java.io.ObjectOutputStreams. This includes primitive datatypes in the Java programming language, remote objects in the Javagramming language, and non-remote objects in the Java programmingguage that implement thejava.io.Serializable interface. (Java™Remote Method Invocation Specification, Section 2.6)

serviceSomething that can be used by a person, a program, or another servican be computational, storage, a communication channel to another usanother service. Examples of services include devices such as printersplays, disks, software (such as applications or utilities), information (suas databases and files), and users of the system. Services will appeagrammatically as objects in the Java programming language, perhaps mup of other objects in the Java programming language. A service will han interface, which defines the operations that can be requested of thavice. The type of the service determines the interfaces that make upservice. (The Jini™ Architecture Specification, Section AR.2.1.1, “Ser-vices”)

service itemsEach service item represents an instance of a service available withindjinn. The item contains the stub (if the service is implemented as a rem

Page 20: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

496

hatibutervice.ice,

hodtion..2,

ele-avan,

orthe

in the

tionto ality.

theny

object) or serialized object (if the service makes use of a local proxy) tprograms use to access the service, and an extensible collection of attrsets that describe the service or provide secondary interfaces to the seA new service item is created in the Jini lookup service when a new servis added to the djinn. (The Jini Technology Core Platform SpecificationSection LU.1.1 “The Lookup Service Model”)

service registrarA synonym for Jini lookup service. (Seelookup service) (The Jini Technol-ogy Core Platform Specification, Section LU.2.5 “ServiceRegistrar”)

skeletonThe server-side entity that reads parameters from incoming metrequests and dispatches calls to the actual remote object implementaNote that in the Java 2 Software Development Kit, Standard Edition, v1skeleton functionality is now handled by the remote object stub, but sktons may still be used for compatibility with earlier releases of the 1.1 JDevelopment Kit (JDK). (Java™ Remote Method Invocation SpecificatioSection 3.3)

smart proxyA proxy that typically consists of a set of local methods and a set of onemore remote object references (stubs). Clients invoke one or more oflocal methods to access the methods of the remote objects referencedsmart proxy. (Introduction to Helper Utilities and Services,Section US.2.8.6, “Remote Objects, Stubs, and Proxies”) (See alsoproxy)

store-and-forward agentA distributed event adapter that enables the object generating a notificato hand the actual notification of those who have registered interest offseparate object. This agent can implement various policies for reliabi(The Jini Technology Core Platform Specification,Section EV.3.1 “Store-and-Forward Agents”)

strictly local proxyA form of a proxy that consists of only local methods, each executing inclient’s JVM. Unlike smart proxies, no remote invocations result when amethod of a strictly local proxy is invoked. (See alsosmart proxy)

Page 21: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 497

arevo-

ntt ofaurs,ote

n.and

a-ort,

ide

an

beor alln ton of

ns-

thanrent

stubThe proxy for a remote object, which implements all the interfaces thatsupported by the remote object implementation and forwards method incations to the actual remote object instance. (Java™ Remote Method Invo-cation Specification,Section 3.3) The stub is an object local to the cliethat acts as the “representative” of the remote object. From the poinview of the client, the stubis the remote object. When the client invokesmethod on the local stub, communication with the remote object occresulting in the execution of the corresponding method in the remobject’s JVM.

stub/skeleton layerThe layer of theRMI system that aids in carrying out method invocatioThe stub/skeleton layer is the interface between the application layerthe rest of theRMI system. (Java™ Remote Method Invocation Specifiction, Section 3.3) This layer does not deal with specifics of any transpbut transmits data to the remote reference layer via the abstraction ofmar-shal streams. This layer contains client-side stubs (proxies) and server-sskeletons. (Section 3.2)

templateAn entry object that has some or all of its fields set to specifiedvalues.Templates may be used to find matching entries. A template will matchentry if and only if the template’s non-null public fields match the entry’snon-null public fields exactly. Remaining fields (those set tonull) are notused in the matching process but are left aswildcards. (The Jini TechnologyCore Platform Specification, Section EN.1.5 “Templates and Matching”)

transactionIn general, a transaction is a tool that allows a set of operations togrouped in such a way as to make them all appear to either all succeedfail; further, the operations in the set appear from outside the transactiooccur simultaneously. In the Jini architecture, the concrete representatioa transaction is encapsulated in an object. (The Jini Technology Core Plat-form Specification, Section TX.1.1 “Model and Terms”)

transaction clientAn object that does either or both of the following: (1) requests that a traaction manager create a transaction, (2) invokes thecommit or abort

method to complete a transaction. A single transaction may have moreone client, since the object that completes a transaction may be diffe

Page 22: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

498

tion

ans-nsac-

(

racting

er or

ans-dressddressnsportionsdis-

n-

e

the

from the object that requested its creation. An object that is a transacclient may also be a transaction manager or participant. (The Jini Technol-ogy Core Platform Specification, Section TX.1.1 “Model and Terms”)

transaction managerAn object that (1) services requests from transaction clients to create tractions and (2) tracks and manages the completion state of those trations by implementing theTransactionManager interface. An object that isa transaction manager may also be a transaction client or participant.TheJini Technology Core Platform Specification,Section TX.1.1 “Model andTerms”)

transaction participantAn object that executes operations of a transaction and is able to intewith the manager to complete transactions properly. An object providthis service may implement theTransactionParticipant interface. Anobject that is a transaction participant may also be a transaction managclient. (The Jini Technology Core Platform Specification,Section TX.1.1“Model and Terms”)

transportThe abstraction that manages channels in theRMI transport layer. Eachchannel is a virtual connection between two address spaces. Within a trport, only one channel exists per pair of address spaces (the local adspace and a remote address space). Given an endpoint to a remote aspace, a transport sets up a channel to that address space. The traabstraction is also responsible for accepting calls on incoming connectto the address space, setting up a connection object for the call, andpatching to higher layers in the system. (Java™ Remote Method InvocationSpecification, Section 3.5)

transport layerThe layer of theRMI system that is responsible for connection set up, conection management, and remote object tracking. (Java™ Remote MethodInvocation Specification,Section 3.2) The transport layer sits below thremote reference layer.

weak referenceWhen a remote object is not referenced by any client, theRMI runtimerefers to it using a weak reference. The weak reference allows theJVM’sgarbage collector to discard the object if no other strong references to

Page 23: Jini™Technology Glossary - Clemson Universitypargas/jini/jini1_1/doc/... · 2000. 10. 10. · JINI TECHNOLOGY GLOSSARY, version 1.1 481 bad object exception An exception that implies

JINI TECHNOLOGY GLOSSARY, version 1.1 499

theak

col-

object exist. The distributed garbage collection algorithm interacts withlocal JVM’s garbage collector in the usual ways by holding normal or wereferences to objects; thus, a weak reference allows theRMI runtime to ref-erence a remote object, but not prevent the object from being garbagelected. (Java™ Remote Method Invocation Specification, Section 3.7)