Overview | Package | Class | Tree | Deprecated | Index | Help
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

## Package org.ka2ddo.yaac.webserver

The package contains the classes that implement YAAC's mini webserver, which allows other users on the YAAC computer's LAN to effectively "look over the shoulder" of the YAAC operator, seeing the main views of YAAC as browseable web pages.

See:
Description

Interface Summary
AttributedPage | This is a tagging interface to specify that the page has cleared the requestHeaders map and reloaded it with attributes for the response.
CacheablePage | This is a tagging interface to mark that the webpage produced by its implementing class may be cached by the browser or intervening proxy servers.

Class Summary
BulletinsPage | This generates an HTML page representing the current state of the Bulletin Board view in YAAC.
FavIcon | This class exports the YAAC icon in taskbar size as the website's favicon.ico file.
FileCopierPage | This class defines a HTTP page for copying a file from this YAAC installation to another.
HistoryPage | This generates a page representing the message history for a particular station or object.
HttpConnectionThread | This class processes one inbound HTTP connection.
HttpServer | This class implements a very simple HTTP server.
IconPage | This "page" delivers the PNG encoding of a APRS symbol icon.
IndexPage | This class generates the home page for the mini webserver inside YAAC.
MapPage | This class dynamically generates a PNG image of the current map as seen on the YAAC GUI.
MessagesPage | This generates an HTML page representing the Messages view in YAAC.
MonitorWxPage | This generates an HTML page representing the weather stations monitored for health by this station.
PathHandler | This is the generic web page generator class which should be subclassed to produce a particular page.
RobotsTxtPage | This page produces a robots.txt file contents to try to prevent web spiders from navigating the entire website in YAAC.
StationsPage | This generates an HTML page representing the Stations/Objects view in YAAC.

Enum Summary
FileCopierPage.PathType | Enumeration specifying the base directory for the relative path of the exported file.

## Package org.ka2ddo.yaac.webserver Description

The package contains the classes that implement YAAC's mini webserver, which allows other users on the YAAC computer's LAN to effectively "look over the shoulder" of the YAAC operator, seeing the main views of YAAC as browseable web pages.

The `HttpServer` class is the main thread that accepts inbound connections from browsers, defaulting to listening on TCP port 8008 (because the normal HTTP port 80 is often considered as "privileged" and therefore not allocatable by non-administrator users).

`HttpConnectionThread` serves one browser connection, and can launch a page for any registered URL that is provided by a class extending the PathHandler abstract class. Pages currently implemented include:

URL | Class | Function
--- | --- | ---
/ | `IndexPage` | home page displaying a title, the map, and links to other pages
/map.png | `MapPage` | the actual map image in PNG format
/stations | `StationsPage` | the Stations/Objects list as a table
/icon/* | `IconPage` | one of the APRS symbol images as specified by the following path
/bulletins | `BulletinsPage` | the Bulletin Board display
/messages | `MessagesPage` | the Raw messages (not Raw Packets) view
/history/callsign | `HistoryPage` | the per-station raw packets view
URLs of defined pages in mini-webserver

Adding other pages will require modifying HttpConnectionThread to register the new page handlers with appropriate URLs.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES