How brom016/simpoka works
SIMPOKA is a Java Swing desktop system for managing organizational activities. Users log in, reach a role-aware dashboard, and manage or search activities; the activity controller coordinates validation and persistence. Reports can be exported to PDF. The README also documents organization and user management, represented here by their DAO layer. Evidence is strongest for the sampled authentication, activity, DAO, and UI relationships; unsampled subsystem links are omitted rather than inferred.
Main entry points: ActivityController.java Activity operations · AuthController.java Authentication · UIConstants.java Shared UI styling · DashboardFrame.java Dashboard
Components 21
Desktop entry and auth
- Application startup
src/com/activitymonitor/App.java - Login screen
src/com/activitymonitor/view/LoginFrame.java - Authentication
src/com/activitymonitor/controller/AuthController.java - User session
src/com/activitymonitor/util/SessionManager.java
Activity management
- Dashboard
src/com/activitymonitor/view/DashboardFrame.java - Activity operations
src/com/activitymonitor/controller/ActivityController.java - Activity table
src/com/activitymonitor/view/ActivityTablePanel.java - Activity form
src/com/activitymonitor/view/ActivityFormPanel.java - Input validation
src/com/activitymonitor/util/InputValidator.java
Persistence and domain
- Activity persistence
src/com/activitymonitor/dao/ActivityDAO.java - User persistence
src/com/activitymonitor/dao/UserDAO.java - Organization persistence
src/com/activitymonitor/dao/OrganizationDAO.java - Activity model
src/com/activitymonitor/model/Activity.java - User model
src/com/activitymonitor/model/User.java - Organization model
src/com/activitymonitor/model/Organization.java - JDBC connection
src/com/activitymonitor/util/DBConnection.java - MySQL database
db/schema.sql
Reports and shared UI
- PDF export dialog
src/com/activitymonitor/view/ExportPDFDialog.java - PDF generation
src/com/activitymonitor/util/PDFExporter.java - Shared UI styling
src/com/activitymonitor/view/UIConstants.java
Other components
- User
Connections 30
- User → Application startup: launches
README.md - Application startup → Login screen: opens
src/com/activitymonitor/App.java - Login screen → Authentication: submits credentials
src/com/activitymonitor/controller/AuthController.java - Authentication → User persistence: authenticates
src/com/activitymonitor/controller/AuthController.java - Authentication → User session: stores user
src/com/activitymonitor/controller/AuthController.java - Authentication → Dashboard: opens after login
src/com/activitymonitor/controller/AuthController.java - Authentication → Activity operations: initializes
src/com/activitymonitor/controller/AuthController.java - Dashboard → Activity table: displays
src/com/activitymonitor/view/DashboardFrame.java - Activity table → Activity operations: dispatches actions
src/com/activitymonitor/controller/ActivityController.java - Activity operations → Activity form: opens and reads
src/com/activitymonitor/controller/ActivityController.java - Activity operations → Input validation: validates input
src/com/activitymonitor/controller/ActivityController.java - Activity operations → Activity persistence: runs activity operations
src/com/activitymonitor/controller/ActivityController.java - Activity operations → Organization persistence: loads organization
src/com/activitymonitor/controller/ActivityController.java - Activity persistence → Activity model: maps records
src/com/activitymonitor/dao/ActivityDAO.java - User persistence → User model: maps users
src/com/activitymonitor/dao/UserDAO.java - Organization persistence → Organization model: maps organizations
src/com/activitymonitor/dao/OrganizationDAO.java - Activity persistence → JDBC connection: uses connection
src/com/activitymonitor/dao/ActivityDAO.java - User persistence → JDBC connection: uses connection
src/com/activitymonitor/dao/UserDAO.java - Organization persistence → JDBC connection: uses connection
src/com/activitymonitor/dao/OrganizationDAO.java - JDBC connection → MySQL database: connects to
src/com/activitymonitor/util/DBConnection.java - User → PDF export dialog: requests export
README.md - Dashboard → PDF export dialog: offers export
README.md - Activity operations → PDF generation: exports activities
src/com/activitymonitor/controller/ActivityController.java - PDF generation → Activity model: renders activity data
src/com/activitymonitor/util/PDFExporter.java - PDF generation → Organization model: includes organization
src/com/activitymonitor/util/PDFExporter.java - Activity table → Shared UI styling: uses styling
src/com/activitymonitor/view/ActivityTablePanel.java - Activity form → Shared UI styling: uses styling
src/com/activitymonitor/view/ActivityFormPanel.java - Dashboard → Shared UI styling: uses styling
src/com/activitymonitor/view/DashboardFrame.java - Login screen → Shared UI styling: uses styling
src/com/activitymonitor/view/LoginFrame.java - PDF export dialog → Shared UI styling: uses styling
src/com/activitymonitor/view/ExportPDFDialog.java