# Package org.cybergarage.upnp.device

UPnP device implementation and management.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  DeviceChangeListener | Interface for receiving UPnP device change notifications.
  NotifyListener | Interface for receiving SSDP notification messages.
  PresentationListener | Interface for receiving UPnP device presentation requests.
  SearchListener | Interface for receiving SSDP search request messages.
  SearchResponseListener | Interface for receiving SSDP search response messages.

- Class Summary
  Class | Description
  --- | ---
  Advertiser | Thread for advertising UPnP device presence on the network.
  Description | Utility class for UPnP device description error messages.
  Disposer | Thread for disposing expired UPnP devices and subscriptions.
  MAN | Utility class for SSDP MAN (Method Application Namespace) header values.
  NT | Utility class for SSDP NT (Notification Type) header values and validation.
  NTS | Utility class for SSDP NTS (Notification Sub-Type) header values.
  ST | Utility class for SSDP ST (Search Target) header values and validation.
  USN | Utility class for SSDP USN (Unique Service Name) header values and parsing.

- Exception Summary
  Exception | Description
  --- | ---
  InvalidDescriptionException | Exception thrown when UPnP device description is invalid or cannot be parsed.

## Package org.cybergarage.upnp.device Description

UPnP device implementation and management.

This package provides classes for implementing UPnP devices, including device advertisement, discovery response handling, and device lifecycle management.

Key Components:

- Advertiser - Handles UPnP device advertisement and announcements
- Description - Manages UPnP device description documents
- Disposer - Handles device cleanup and resource disposal
- SearchListener - Listens for UPnP search requests
- PresentationListener - Handles device presentation URL requests
- DeviceChangeListener - Notifies of device state changes
- MAN, NTS, NT, ST, USN - UPnP protocol constants and enums

Main Functionality:

- UPnP device advertisement and discovery
- Device description management
- Search request handling
- Device lifecycle and state management
- Presentation URL handling

Usage Notes:

- Used by UPnP devices to advertise their presence
- Handles SSDP (Simple Service Discovery Protocol) operations
- Manages device registration and deregistration