Project Structure¶
Overview of the Authentication Test API project organization.
Directory Layout¶
authentication_test/
├── .github/
│ └── workflows/
│ └── docs.yml # GitHub Actions for docs deployment
├── docs/ # MkDocs documentation
│ ├── mkdocs.yml # MkDocs configuration
│ ├── requirements.txt # Python dependencies for docs
│ └── docs/ # Documentation source files
├── API_server/ # API Server application
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/com/example/api/
│ │ │ │ ├── config/ # Configuration classes
│ │ │ │ ├── model/ # Data models
│ │ │ │ ├── resource/ # JAX-RS endpoints
│ │ │ │ ├── service/ # Business logic
│ │ │ │ └── exception/ # Exception handlers
│ │ │ ├── resources/
│ │ │ │ └── META-INF/
│ │ │ │ └── microprofile-config.properties
│ │ │ └── liberty/
│ │ │ └── config/
│ │ │ └── server.xml # OpenLiberty configuration
│ │ └── test/
│ │ └── java/ # Test classes
│ ├── pom.xml # Maven configuration
│ ├── Containerfile # Container build file
│ └── spec.md # API specification
└── README.md # Project README
Key Components¶
Configuration (config/)¶
ApiApplication.java- JAX-RS application and OpenAPI config
Models (model/)¶
Schedule.java- User schedule responseScheduleItem.java- Individual schedule entryHelloResponse.java- Health check responseErrorResponse.java- Standard error format
Resources (resource/)¶
HelloResource.java- Health check endpointScheduleResource.java- Schedule endpoint (secured)
Services (service/)¶
ScheduleService.java- Schedule generation logic
Exception Handling (exception/)¶
GlobalExceptionMapper.java- Centralized error handling