Index

A C D E F G H I L M P R S T U W 
All Classes and Interfaces|All Packages|Serialized Form

A

allRecommendationRequests() - Method in class edu.ucsb.cs156.rec.controllers.RecommendationRequestController
List all recommendation requests
allRequestTypes() - Method in class edu.ucsb.cs156.rec.controllers.RequestTypesController
This method returns a list of all request types.
ApiController - Class in edu.ucsb.cs156.rec.controllers
This is an abstract class that provides common functionality for all API controllers.
ApiController() - Constructor for class edu.ucsb.cs156.rec.controllers.ApiController
 

C

csrf() - Method in class edu.ucsb.cs156.rec.controllers.FrontendController
When not in development, the CSRF endpoint is not used, so return 404
csrf(CsrfToken) - Method in class edu.ucsb.cs156.rec.controllers.CSRFController
This method returns a CSRF token.
CSRFController - Class in edu.ucsb.cs156.rec.controllers
The CSRF controller is used to get a CSRF token.
CSRFController() - Constructor for class edu.ucsb.cs156.rec.controllers.CSRFController
 
CurrentUser - Class in edu.ucsb.cs156.rec.models
This is a model class that represents the current user.
CurrentUser() - Constructor for class edu.ucsb.cs156.rec.models.CurrentUser
 
CurrentUserService - Class in edu.ucsb.cs156.rec.services
This is a service that provides information about the current user.
CurrentUserService() - Constructor for class edu.ucsb.cs156.rec.services.CurrentUserService
 
CurrentUserServiceImpl - Class in edu.ucsb.cs156.rec.services
This is a service that provides information about the current user.
CurrentUserServiceImpl() - Constructor for class edu.ucsb.cs156.rec.services.CurrentUserServiceImpl
 

D

developmentApplicationRunner() - Method in class edu.ucsb.cs156.rec.ExampleApplication
Hook that can be used to set up any services needed for development

E

edu.ucsb.cs156.rec - package edu.ucsb.cs156.rec
 
edu.ucsb.cs156.rec.aop - package edu.ucsb.cs156.rec.aop
 
edu.ucsb.cs156.rec.config - package edu.ucsb.cs156.rec.config
 
edu.ucsb.cs156.rec.controllers - package edu.ucsb.cs156.rec.controllers
 
edu.ucsb.cs156.rec.entities - package edu.ucsb.cs156.rec.entities
 
edu.ucsb.cs156.rec.errors - package edu.ucsb.cs156.rec.errors
 
edu.ucsb.cs156.rec.models - package edu.ucsb.cs156.rec.models
 
edu.ucsb.cs156.rec.repositories - package edu.ucsb.cs156.rec.repositories
 
edu.ucsb.cs156.rec.services - package edu.ucsb.cs156.rec.services
 
edu.ucsb.cs156.rec.services.wiremock - package edu.ucsb.cs156.rec.services.wiremock
 
EntityAlreadyExistsException - Exception Class in edu.ucsb.cs156.rec.errors
This is an error class for a custom RuntimeException in Java that is used to indicate when an entity of a specific type with a given ID already exists in the repository.
EntityAlreadyExistsException(Class<?>, Object) - Constructor for exception class edu.ucsb.cs156.rec.errors.EntityAlreadyExistsException
Constructor for the exception
EntityNotFoundException - Exception Class in edu.ucsb.cs156.rec.errors
This is an error class for a custom RuntimeException in Java that is used to indicate when an entity of a specific type with a given ID is not found.
EntityNotFoundException(Class<?>, Object) - Constructor for exception class edu.ucsb.cs156.rec.errors.EntityNotFoundException
Constructor for the exception
ExampleApplication - Class in edu.ucsb.cs156.rec
The ExampleApplication class is the main entry point for the application.
ExampleApplication() - Constructor for class edu.ucsb.cs156.rec.ExampleApplication
 
ExampleApplicationRunner - Class in edu.ucsb.cs156.rec
This class contains a `run` method that is called once at application startup time.
ExampleApplicationRunner() - Constructor for class edu.ucsb.cs156.rec.ExampleApplicationRunner
 

F

filterChain(HttpSecurity) - Method in class edu.ucsb.cs156.rec.config.SecurityConfig
The `filterChain` method in this Java code configures various security settings for an HTTP request, including authorization, exception handling, OAuth2 login, CSRF protection, and logout behavior.
findAllByRequesterId(long) - Method in interface edu.ucsb.cs156.rec.repositories.RecommendationRequestRepository
This method returns all the RecommendationRequests with a given requesterId.
findByEmail(String) - Method in interface edu.ucsb.cs156.rec.repositories.UserRepository
This method returns a User entity with a given email.
findByRequestType(String) - Method in interface edu.ucsb.cs156.rec.repositories.RequestTypeRepository
 
FrontendController - Class in edu.ucsb.cs156.rec.controllers
The FrontendController is used to serve the frontend of the application.
FrontendController() - Constructor for class edu.ucsb.cs156.rec.controllers.FrontendController
 
FrontendProxyController - Class in edu.ucsb.cs156.rec.controllers
The FrontendProxyController is used to proxy requests to the frontend of the application.
FrontendProxyController() - Constructor for class edu.ucsb.cs156.rec.controllers.FrontendProxyController
 

G

genericMessage(String) - Method in class edu.ucsb.cs156.rec.controllers.ApiController
This method returns a generic message.
getAdmin(String) - Method in class edu.ucsb.cs156.rec.config.SecurityConfig
This method checks if the given email belongs to an admin user either from a predefined list or by querying the user repository.
getAllCurrentUser() - Method in class edu.ucsb.cs156.rec.controllers.RecommendationRequestController
List all recommendation requests created by a user with requesterId
getById(Long) - Method in class edu.ucsb.cs156.rec.controllers.RecommendationRequestController
Get a single request by id CHECK if recommendation request belongs to user
getById(Long) - Method in class edu.ucsb.cs156.rec.controllers.RequestTypesController
This method returns a single request type.
getCurrentUser() - Method in class edu.ucsb.cs156.rec.controllers.ApiController
This method returns the current user.
getCurrentUser() - Method in class edu.ucsb.cs156.rec.controllers.UserInfoController
This method returns the current user.
getCurrentUser() - Method in class edu.ucsb.cs156.rec.services.CurrentUserService
This method returns the current user as a CurrentUser object
getCurrentUser() - Method in class edu.ucsb.cs156.rec.services.CurrentUserServiceImpl
This method returns the current user as a User object.
getGrantedAuthorities() - Method in class edu.ucsb.cs156.rec.services.GrantedAuthoritiesService
The function retrieves and logs the granted authorities from the current security context in a Java application.
getOAuth2AuthenticatedUser(SecurityContext, Authentication) - Method in class edu.ucsb.cs156.rec.services.CurrentUserServiceImpl
This method obtains the current user that is logged in with OAuth2, if any.
getRoles() - Method in class edu.ucsb.cs156.rec.services.CurrentUserService
This method returns the roles of the current user.
getRoles() - Method in class edu.ucsb.cs156.rec.services.CurrentUserServiceImpl
This method returns the roles of the current user.
getSystemInfo() - Method in class edu.ucsb.cs156.rec.controllers.SystemInfoController
This method returns the system information.
getSystemInfo() - Method in class edu.ucsb.cs156.rec.services.SystemInfoService
This method returns the system information.
getSystemInfo() - Method in class edu.ucsb.cs156.rec.services.SystemInfoServiceImpl
This method returns the system information.
getUser() - Method in class edu.ucsb.cs156.rec.services.CurrentUserService
This method returns the current user as a User object.
getUser() - Method in class edu.ucsb.cs156.rec.services.CurrentUserServiceImpl
This method returns the current user as a User object.
getWiremockServer() - Method in class edu.ucsb.cs156.rec.services.wiremock.WiremockService
This method returns the wiremockServer
getWiremockServer() - Method in class edu.ucsb.cs156.rec.services.wiremock.WiremockServiceDummy
Dummy call for getWiremockServer()
getWiremockServer() - Method in class edu.ucsb.cs156.rec.services.wiremock.WiremockServiceImpl
This method returns the wiremockServer
GrantedAuthoritiesService - Class in edu.ucsb.cs156.rec.services
The is a service that retrieves and logs the granted authorities for the current user's authentication.
GrantedAuthoritiesService() - Constructor for class edu.ucsb.cs156.rec.services.GrantedAuthoritiesService
 

H

handleGenericException(EntityAlreadyExistsException) - Method in class edu.ucsb.cs156.rec.controllers.ApiController
This method handles the EntityAlreadyExistsException.
handleGenericException(Throwable) - Method in class edu.ucsb.cs156.rec.controllers.ApiController
This method handles the EntityNotFoundException.

I

index() - Method in class edu.ucsb.cs156.rec.controllers.FrontendController
Serve home page of application
init() - Method in class edu.ucsb.cs156.rec.services.wiremock.WiremockService
This method initializes the WireMockServer
init() - Method in class edu.ucsb.cs156.rec.services.wiremock.WiremockServiceDummy
Dummy call to init
init() - Method in class edu.ucsb.cs156.rec.services.wiremock.WiremockServiceImpl
This method initializes the WireMockServer
isLoggedIn() - Method in class edu.ucsb.cs156.rec.services.CurrentUserService
This method returns whether the current user is logged in.

L

logControllers(JoinPoint) - Method in class edu.ucsb.cs156.rec.aop.LoggingAspect
This method is called before any controller method that is annotated with @RequestMapping, @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, or @PatchMapping.
LoggingAspect - Class in edu.ucsb.cs156.rec.aop
This class is an Aspect that logs all invocations of controller methods that are annotated with @RequestMapping, @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, or @PatchMapping.
LoggingAspect() - Constructor for class edu.ucsb.cs156.rec.aop.LoggingAspect
 

M

main(String[]) - Static method in class edu.ucsb.cs156.rec.ExampleApplication
The main method is the entry point for the application.

P

postRecommendationRequest(Long, String, String, LocalDateTime) - Method in class edu.ucsb.cs156.rec.controllers.RecommendationRequestController
Create a new recommendation request
postRequestType(String) - Method in class edu.ucsb.cs156.rec.controllers.RequestTypesController
This method creates a new request type.
proxy(ProxyExchange<byte[]>) - Method in class edu.ucsb.cs156.rec.controllers.FrontendProxyController
This method proxies requests to the frontend server.

R

RecommendationRequest - Class in edu.ucsb.cs156.rec.entities
 
RecommendationRequest() - Constructor for class edu.ucsb.cs156.rec.entities.RecommendationRequest
 
RecommendationRequestController - Class in edu.ucsb.cs156.rec.controllers
 
RecommendationRequestController() - Constructor for class edu.ucsb.cs156.rec.controllers.RecommendationRequestController
 
RecommendationRequestRepository - Interface in edu.ucsb.cs156.rec.repositories
 
RequestType - Class in edu.ucsb.cs156.rec.entities
This is a JPA entity that represents a Request Type, i.e.
RequestType() - Constructor for class edu.ucsb.cs156.rec.entities.RequestType
 
RequestTypeRepository - Interface in edu.ucsb.cs156.rec.repositories
The RequestTypeRepository is a repository for RequestType entities
RequestTypesController - Class in edu.ucsb.cs156.rec.controllers
This is a REST controller for Request Types
RequestTypesController() - Constructor for class edu.ucsb.cs156.rec.controllers.RequestTypesController
 
RequestTypeService - Class in edu.ucsb.cs156.rec.services
This is a service that provides information about the current user.
RequestTypeService() - Constructor for class edu.ucsb.cs156.rec.services.RequestTypeService
 
run(ApplicationArguments) - Method in class edu.ucsb.cs156.rec.ExampleApplicationRunner
Called once at application startup time.

S

SecurityConfig - Class in edu.ucsb.cs156.rec.config
The `SecurityConfig` class in Java configures web security with OAuth2 login, CSRF protection, and role-based authorization based on user email addresses.
SecurityConfig() - Constructor for class edu.ucsb.cs156.rec.config.SecurityConfig
 
setupOauthMocks(Stubbing, boolean) - Static method in class edu.ucsb.cs156.rec.services.wiremock.WiremockServiceImpl
This method sets up the necessary mocks for authentication
SystemInfo - Class in edu.ucsb.cs156.rec.models
This is a model class that represents system information.
SystemInfo() - Constructor for class edu.ucsb.cs156.rec.models.SystemInfo
 
SystemInfoController - Class in edu.ucsb.cs156.rec.controllers
This is a REST controller for getting information about the system.
SystemInfoController() - Constructor for class edu.ucsb.cs156.rec.controllers.SystemInfoController
 
SystemInfoService - Class in edu.ucsb.cs156.rec.services
The SystemInfoService is a service that provides global information about the system and makes it available to the frontend.
SystemInfoService() - Constructor for class edu.ucsb.cs156.rec.services.SystemInfoService
 
SystemInfoServiceImpl - Class in edu.ucsb.cs156.rec.services
This is a service for getting information about the system.
SystemInfoServiceImpl() - Constructor for class edu.ucsb.cs156.rec.services.SystemInfoServiceImpl
 

T

trySave(RequestType) - Method in class edu.ucsb.cs156.rec.services.RequestTypeService
 
trySaveTypes(List<RequestType>) - Method in class edu.ucsb.cs156.rec.services.RequestTypeService
 

U

User - Class in edu.ucsb.cs156.rec.entities
This is a JPA entity that represents a user.
User() - Constructor for class edu.ucsb.cs156.rec.entities.User
 
UserInfoController - Class in edu.ucsb.cs156.rec.controllers
This is a REST controller for getting information about the current user.
UserInfoController() - Constructor for class edu.ucsb.cs156.rec.controllers.UserInfoController
 
UserRepository - Interface in edu.ucsb.cs156.rec.repositories
The UserRepository is a repository for User entities.
users() - Method in class edu.ucsb.cs156.rec.controllers.UsersController
This method returns a list of all users.
UsersController - Class in edu.ucsb.cs156.rec.controllers
This is a REST controller for getting information about the users.
UsersController() - Constructor for class edu.ucsb.cs156.rec.controllers.UsersController
 

W

webSecurityCustomizer() - Method in class edu.ucsb.cs156.rec.config.SecurityConfig
The `webSecurityCustomizer` method is used to configure web security in Java, specifically ignoring requests to the "/h2-console/**" path.
wiremockApplicationRunner() - Method in class edu.ucsb.cs156.rec.ExampleApplication
When using the wiremock profile, this method will call the code needed to set up the wiremock services
WiremockService - Class in edu.ucsb.cs156.rec.services.wiremock
This is a service for mocking authentication using wiremock This class relies on property values.
WiremockService() - Constructor for class edu.ucsb.cs156.rec.services.wiremock.WiremockService
 
WiremockServiceDummy - Class in edu.ucsb.cs156.rec.services.wiremock
This is a dummy service for profiles besides wiremock where we do not want the mocked authentication, but instead real oauth authentication
WiremockServiceDummy() - Constructor for class edu.ucsb.cs156.rec.services.wiremock.WiremockServiceDummy
 
WiremockServiceImpl - Class in edu.ucsb.cs156.rec.services.wiremock
This is a service for mocking authentication using wiremock This class relies on property values.
WiremockServiceImpl() - Constructor for class edu.ucsb.cs156.rec.services.wiremock.WiremockServiceImpl
 
A C D E F G H I L M P R S T U W 
All Classes and Interfaces|All Packages|Serialized Form