Package com.kosdev.kos.core.service.app


package com.kosdev.kos.core.service.app
This package provides the core application framework for KOS, including application lifecycle management, dynamic loading capabilities, and messaging infrastructure.

Core Components

Application Foundation

The abstract Application class serves as the starting point for all KOS applications, providing:
  • Access to core KOS services (MessageBroker, VFS, BeanContext)
  • Configuration management and database migration support
  • Lifecycle hooks for initialization and cleanup
  • Browser intent handling and routing capabilities
The SystemApplication extends this foundation with additional methods to access the device, assembly, and region services.

Dynamic Application Management

The AppService provides comprehensive application lifecycle management:
  • Dynamic loading and unloading of applications from KAB files
  • Event notifications for application state changes
Applications are loaded using AppLoader implementations, with LoadableApp representing applications that can be dynamically managed by the system.

Event System

The package provides event-driven application management through:
  • AppListener - Interface for receiving application lifecycle events
  • AppStartedCallback - Callback for application startup completion
  • Integration with the core message broker system

Messaging Infrastructure

The AppMessageBroker provides application-scoped messaging by automatically prefixing topics with the application ID, enabling isolated communication channels for each application while maintaining access to the global message broker.
Since:
1
Version:
9
See Also:
  • Class
    Description
    A subclass of BrowserIntent that generates an intent that is targeted at a specific application.
    Base class for all KOS applications.
     
    Listener for Application-related events.
    Subclass of ListenerList which examines the classloader of objects being added, and if they originate from an application, they will only be added once the application has started.
    Class responsible for loading an application from the filesystem.
    Wrapper for the system message broker that prefixes the topics with the application id.
    Service that manages applications within KOS.
    Callback for AppService.whenAppStarted().
    Base class for application configuration beans.
    Callback for AppService.whenAppStarted().
    Information about a manifest section that has a "kos.autostart." prefix.
    Information about an SDK that an application is compiled against.
    Base class for system applications, which simply adds convenience methods to the base Application type.