---
title: "Short note: JINI distributed event spec"
subject: "Distributed System"
chapter: 2
key: "semester_7/distributed_system:jini-event-note"
source: https://www.bctengineer.com/q/semester_7/distributed_system/jini-event-note
site: BCT Engineering
---

# Short note: JINI distributed event spec

Distributed System · Chapter 2: Distributed Objects and File System

- Asked in: 2074 Chaitra, 2 marks
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_7/distributed_system/jini-event-note
- Whole chapter: https://www.bctengineer.com/md/semester_7/distributed_system/chapter-2

## Question

Write a short note on JINI Distributed Event Specification.

## Short answer

Jini distributed events enable notification across JVMs using RemoteEventListener. Generators register listeners, returning an EventRegistration with a lease. Events carry sequence numbers for ordering, and third-party agents can filter or store them.

## Answer

**JINI Distributed Event Specification** defines how objects in a Java/Jini network are notified when something happens in another object, as an extension of the Java event model across address spaces.

- **Event generator:** the object where events occur. It has a `register` method for interested parties.
- **RemoteEventListener:** interface implemented by a subscriber, with a method `notify(RemoteEvent)`.
- **RemoteEvent:** carries the event identifier, the source, a sequence number (to detect lost or out of order events) and a *handback* object given by the listener at registration.
- **EventRegistration:** returned on registering; it includes a **lease**.
- **Leases:** registration is for a limited time and must be renewed, so dead listeners are cleaned up.
- **Third-party agents:** a mailbox, filter or store can sit between generator and listener to forward, filter or store events.

Notifications are delivered by RMI. Delivery is neither guaranteed nor ordered, so listeners use the sequence number to detect missing or out-of-order events.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. What does the lease in a Jini EventRegistration achieve?
   A. It makes the registration permanent
   B. Registration lasts a limited time and must be renewed so dead listeners are cleaned up
   C. It encrypts the event
   D. It guarantees events are delivered in order
   Answer: B. Leases remove stale registrations automatically. (Key point: Lease)

2. Why does RemoteEvent carry a sequence number?
   A. To detect lost or out-of-order events since delivery is not guaranteed or ordered
   B. To identify the listener's password
   C. To count the number of leases
   D. To set the lease length
   Answer: A. Delivery by RMI is unordered and unguaranteed, so sequence numbers reveal gaps. (Key point: Sequence number)

3. What must a subscriber implement to receive Jini events?
   A. A lookup service
   B. A mailbox class
   C. An EventRegistration object only
   D. RemoteEventListener with a notify(RemoteEvent) method
   Answer: D. The generator calls notify on the listener by RMI. (Key point: Listener interface)

## Related in Distributed System

- [Event notification among distributed objects](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Aevent-notification-architecture) — Distributed System, chapter 2
- [Short note: JINI](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Ajini-note) — Distributed System, chapter 2
- [JINI goals, CORBA services, OS support](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Aos-support-jini-corba) — Distributed System, chapter 3
- [RMI functionalities; event notification](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Armi-functionalities-events) — Distributed System, chapter 2
- [Event, causal and global ordering](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Aevent-causal-global-ordering) — Distributed System, chapter 5
