# Class BookstoreApplication

java.lang.Object
com.university.bookstore.BookstoreApplication

@SpringBootApplication @Configuration public class BookstoreApplication extends Object
Spring Boot application entry point for the Bookstore Management System.

This class demonstrates how the existing design can be easily extended with Spring Boot to provide REST API capabilities without modifying the core business logic or existing implementations.

The application leverages the existing MaterialStore interface and implementations, showing the extensibility and scalability of the hexagonal architecture design.

Since:
  2024-12-19
Version:
  1.0
Author:
  Navid Mohaghegh

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BookstoreApplication()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static void`
  `main(String[] args)`
  Main entry point for the Spring Boot application.
  `MaterialStore`
  `materialStore()`
  Configures the MaterialStore bean using the existing ModernConcurrentMaterialStore.

  ### Methods inherited from class java.lang.Object

  `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### BookstoreApplication

    public BookstoreApplication()

- ## Method Details

  - ### main

    public static void main(String[] args)
    Main entry point for the Spring Boot application.
    Parameters:
      `args` - command line arguments

  - ### materialStore

    @Bean public MaterialStore materialStore()
    Configures the MaterialStore bean using the existing ModernConcurrentMaterialStore. This demonstrates how the existing implementations can be easily integrated with Spring Boot dependency injection.
    Returns:
      configured MaterialStore instance