Index

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

A

AddCityRequest - Class in dev.karlkadak.backend.dto
Data transfer object for an HTTP POST request for adding a city to the list of tracked cities
AddCityRequest() - Constructor for class dev.karlkadak.backend.dto.AddCityRequest
 
airTemp - Variable in class dev.karlkadak.backend.dto.WeatherResponse
 
airTemperature - Variable in class dev.karlkadak.backend.entity.WeatherData
Air temperature at time of data calculation, Celsius
Null in case of missing value
all() - Method in class dev.karlkadak.backend.controller.CityController
API endpoint for retrieving information about all City objects for which data collection is enabled
apiKey - Variable in class dev.karlkadak.backend.service.CityManager
API key gathered from application.properties which is used for accessing the OpenWeather API
apiKey - Variable in class dev.karlkadak.backend.service.WeatherDataImporter
API key gathered from application.properties which is used for accessing the OpenWeather API
apiPrefix - Variable in class dev.karlkadak.backend.controller.CityControllerTest
 
AppConfig - Class in dev.karlkadak.backend.config
 
AppConfig() - Constructor for class dev.karlkadak.backend.config.AppConfig
 

B

BackendApplication - Class in dev.karlkadak.backend
 
BackendApplication() - Constructor for class dev.karlkadak.backend.BackendApplication
 
BackendApplicationTests - Class in dev.karlkadak.backend
 
BackendApplicationTests() - Constructor for class dev.karlkadak.backend.BackendApplicationTests
 

C

city - Variable in class dev.karlkadak.backend.entity.WeatherData
The city for which the data is collected
City - Class in dev.karlkadak.backend.entity
Class representing a single city for weather data collection
City(String, Double, Double, String) - Constructor for class dev.karlkadak.backend.entity.City
Default constructor using coordinate values, sets City.importingData field to TRUE
CityAlreadyBeingTrackedException - Exception Class in dev.karlkadak.backend.exception
 
CityAlreadyBeingTrackedException() - Constructor for exception class dev.karlkadak.backend.exception.CityAlreadyBeingTrackedException
 
CityAlreadyNotBeingTrackedException - Exception Class in dev.karlkadak.backend.exception
 
CityAlreadyNotBeingTrackedException() - Constructor for exception class dev.karlkadak.backend.exception.CityAlreadyNotBeingTrackedException
 
CityController - Class in dev.karlkadak.backend.controller
REST controller for interacting with the city database
CityController(CityRepository, CityManager, WeatherDataRepository) - Constructor for class dev.karlkadak.backend.controller.CityController
 
CityControllerTest - Class in dev.karlkadak.backend.controller
 
CityControllerTest() - Constructor for class dev.karlkadak.backend.controller.CityControllerTest
 
cityManager - Variable in class dev.karlkadak.backend.controller.CityController
 
cityManager - Variable in class dev.karlkadak.backend.controller.CityControllerTest
 
cityManager - Variable in class dev.karlkadak.backend.service.CityManagerTest
 
CityManager - Class in dev.karlkadak.backend.service
Used for managing the cities and their tracking in the database
Also logs the management actions using Logger
CityManager(CityRepository, Logger, RestTemplate, ObjectMapper, WeatherDataImporter) - Constructor for class dev.karlkadak.backend.service.CityManager
 
CityManagerTest - Class in dev.karlkadak.backend.service
 
CityManagerTest() - Constructor for class dev.karlkadak.backend.service.CityManagerTest
 
CityNotFoundException - Exception Class in dev.karlkadak.backend.exception
 
CityNotFoundException() - Constructor for exception class dev.karlkadak.backend.exception.CityNotFoundException
 
CityNotFoundException(long) - Constructor for exception class dev.karlkadak.backend.exception.CityNotFoundException
 
cityRepository - Variable in class dev.karlkadak.backend.controller.CityController
 
cityRepository - Variable in class dev.karlkadak.backend.controller.CityControllerTest
 
cityRepository - Variable in class dev.karlkadak.backend.service.CityManager
 
cityRepository - Variable in class dev.karlkadak.backend.service.CityManagerTest
 
cityRepository - Variable in class dev.karlkadak.backend.service.WeatherDataImporter
 
cityRepository - Variable in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
CityRepository - Interface in dev.karlkadak.backend.repository
Repository for interacting with the WeatherData table
CityResponse - Class in dev.karlkadak.backend.dto
Data transfer object for HTTP responses for city data requests
CityResponse(City) - Constructor for class dev.karlkadak.backend.dto.CityResponse
Default constructor, build the CityResponse.flagHref URL if given City object's countryCode is not null
contextLoads() - Method in class dev.karlkadak.backend.BackendApplicationTests
 
coordinatePair - Variable in class dev.karlkadak.backend.entity.City
Specifies the geographical location of the city
CoordinatePair - Class in dev.karlkadak.backend.entity
Used to store coordinates of cities
CoordinatePair() - Constructor for class dev.karlkadak.backend.entity.CoordinatePair
 
corsConfigurer() - Method in class dev.karlkadak.backend.config.WebConfig
 
countryCode - Variable in class dev.karlkadak.backend.entity.City
Country code of the location, used for flag image generation

D

defaultImport() - Method in class dev.karlkadak.backend.service.WeatherDataImporter
Fetches the weather data of all City objects which have importingData set as TRUE and saves it to the database
dev.karlkadak.backend - package dev.karlkadak.backend
 
dev.karlkadak.backend.config - package dev.karlkadak.backend.config
 
dev.karlkadak.backend.controller - package dev.karlkadak.backend.controller
 
dev.karlkadak.backend.cron - package dev.karlkadak.backend.cron
 
dev.karlkadak.backend.dto - package dev.karlkadak.backend.dto
 
dev.karlkadak.backend.entity - package dev.karlkadak.backend.entity
 
dev.karlkadak.backend.exception - package dev.karlkadak.backend.exception
 
dev.karlkadak.backend.repository - package dev.karlkadak.backend.repository
 
dev.karlkadak.backend.service - package dev.karlkadak.backend.service
 
disable(Long) - Method in class dev.karlkadak.backend.controller.CityController
API endpoint for disabling weather data tracking for a City object
disableImporting(long) - Method in class dev.karlkadak.backend.service.CityManager
Disables the weather data tracking for City object with given ID

E

enable(AddCityRequest) - Method in class dev.karlkadak.backend.controller.CityController
API endpoint for adding and / or enabling weather data tracking for a City object
enableImporting(String) - Method in class dev.karlkadak.backend.service.CityManager
Adds a City object with the given name to the database or enables tracking its weather data in case it already exists
ErrorResponse - Class in dev.karlkadak.backend.dto
Data transfer object for HTTP responses for indicating an error has occurred
ErrorResponse() - Constructor for class dev.karlkadak.backend.dto.ErrorResponse
 

F

FailedCityDataImportException - Exception Class in dev.karlkadak.backend.exception
 
FailedCityDataImportException() - Constructor for exception class dev.karlkadak.backend.exception.FailedCityDataImportException
 
FailedWeatherDataFetchException - Exception Class in dev.karlkadak.backend.exception
 
FailedWeatherDataFetchException(String) - Constructor for exception class dev.karlkadak.backend.exception.FailedWeatherDataFetchException
 
fetchAndSave(City) - Method in class dev.karlkadak.backend.service.WeatherDataImporter
Fetches the weather data of the specified City and saves it to the database
findAllByImportingDataTrue() - Method in interface dev.karlkadak.backend.repository.CityRepository
Finds all City objects which have importingData set as TRUE
findByName(String) - Method in interface dev.karlkadak.backend.repository.CityRepository
Finds the City object with the specified name
findTopByCity_IdOrderByTimestampDesc(Long) - Method in interface dev.karlkadak.backend.repository.WeatherDataRepository
Finds the latest WeatherData object for a City with the specified id
flagHref - Variable in class dev.karlkadak.backend.dto.CityResponse
 

G

GlobalExceptionHandler - Class in dev.karlkadak.backend.exception
Allows for handling exceptions globally and returning specific HTTP response codes
GlobalExceptionHandler() - Constructor for class dev.karlkadak.backend.exception.GlobalExceptionHandler
 

H

handleCityAlreadyBeingTrackedException(CityAlreadyBeingTrackedException) - Method in class dev.karlkadak.backend.exception.GlobalExceptionHandler
 
handleCityAlreadyNotBeingTrackedException(CityAlreadyNotBeingTrackedException) - Method in class dev.karlkadak.backend.exception.GlobalExceptionHandler
 
handleCityNotFoundException(CityNotFoundException) - Method in class dev.karlkadak.backend.exception.GlobalExceptionHandler
 
handleFailedCityDataImportException(FailedCityDataImportException) - Method in class dev.karlkadak.backend.exception.GlobalExceptionHandler
 
handleMalformedCityNameException(MalformedCityNameException) - Method in class dev.karlkadak.backend.exception.GlobalExceptionHandler
 
handleWeatherDataMissingException(WeatherDataMissingException) - Method in class dev.karlkadak.backend.exception.GlobalExceptionHandler
 
humidity - Variable in class dev.karlkadak.backend.dto.WeatherResponse
 
humidity - Variable in class dev.karlkadak.backend.entity.WeatherData
Humidity at time of data calculation, %
Null in case of missing value

I

iconCode - Variable in class dev.karlkadak.backend.entity.WeatherData
Weather state icon code at time of data calculation
iconHref - Variable in class dev.karlkadak.backend.dto.WeatherResponse
 
id - Variable in class dev.karlkadak.backend.dto.CityResponse
 
id - Variable in class dev.karlkadak.backend.entity.City
Primary key
id - Variable in class dev.karlkadak.backend.entity.WeatherData
Primary key
importerCronExpression - Variable in class dev.karlkadak.backend.cron.WeatherDataImportScheduler
Cron expression gathered from application.properties based on which WeatherDataImportScheduler.taskScheduler runs WeatherDataImporter.defaultImport
importingData - Variable in class dev.karlkadak.backend.entity.City
Specifies if weather data collection for the city is enabled
initializeWeatherDataImport(WeatherDataImportScheduler) - Method in class dev.karlkadak.backend.BackendApplication
 

L

latitude - Variable in class dev.karlkadak.backend.dto.CityResponse
 
latitude - Variable in class dev.karlkadak.backend.entity.CoordinatePair
Geographical latitude of the city
logger - Variable in class dev.karlkadak.backend.cron.WeatherDataImportScheduler
 
logger - Variable in class dev.karlkadak.backend.cron.WeatherDataImportSchedulerTest
 
logger - Variable in class dev.karlkadak.backend.service.CityManager
 
logger - Variable in class dev.karlkadak.backend.service.CityManagerTest
 
logger - Variable in class dev.karlkadak.backend.service.WeatherDataImporter
 
logger - Variable in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
logger() - Method in class dev.karlkadak.backend.config.AppConfig
 
longitude - Variable in class dev.karlkadak.backend.dto.CityResponse
 
longitude - Variable in class dev.karlkadak.backend.entity.CoordinatePair
Geographical longitude of the city

M

main(String[]) - Static method in class dev.karlkadak.backend.BackendApplication
 
MalformedCityNameException - Exception Class in dev.karlkadak.backend.exception
 
MalformedCityNameException() - Constructor for exception class dev.karlkadak.backend.exception.MalformedCityNameException
 
message - Variable in class dev.karlkadak.backend.dto.ErrorResponse
 
mockMvc - Variable in class dev.karlkadak.backend.controller.CityControllerTest
 

N

name - Variable in class dev.karlkadak.backend.dto.AddCityRequest
 
name - Variable in class dev.karlkadak.backend.dto.CityResponse
 
name - Variable in class dev.karlkadak.backend.entity.City
The human-readable name of the city
nameFormattedCorrectly(String) - Method in class dev.karlkadak.backend.service.CityManager
Used for preliminary checking of a city name's validity
Refuses malformed names

O

objectMapper - Variable in class dev.karlkadak.backend.controller.CityControllerTest
 
objectMapper - Variable in class dev.karlkadak.backend.service.CityManager
 
objectMapper - Variable in class dev.karlkadak.backend.service.CityManagerTest
 
objectMapper - Variable in class dev.karlkadak.backend.service.WeatherDataImporter
 
objectMapper - Variable in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
objectMapper() - Method in class dev.karlkadak.backend.config.AppConfig
 
one(Long) - Method in class dev.karlkadak.backend.controller.CityController
API endpoint for retrieving information about a single City object

R

requestData(City) - Method in class dev.karlkadak.backend.service.WeatherDataImporter
Requests and returns the weather data of the specified city
restTemplate - Variable in class dev.karlkadak.backend.service.CityManager
 
restTemplate - Variable in class dev.karlkadak.backend.service.CityManagerTest
 
restTemplate - Variable in class dev.karlkadak.backend.service.WeatherDataImporter
 
restTemplate - Variable in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
restTemplate() - Method in class dev.karlkadak.backend.config.AppConfig
 
retrieveCompleteCity(String) - Method in class dev.karlkadak.backend.service.CityManager
Retrieves a complete City object using the city name received using the OpenWeather API
In case such city already exists in the database, returns that instance instead
Needs to be package-private in order to test directly

S

scheduleImport() - Method in class dev.karlkadak.backend.cron.WeatherDataImportScheduler
Initially runs and schedules the WeatherDataImporter.defaultImport method to run using the cron expression specified in application.properties
setUp() - Method in class dev.karlkadak.backend.cron.WeatherDataImportSchedulerTest
 
setUp() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
setUp() - Method in class dev.karlkadak.backend.service.WeatherDataImporterTest
 

T

taskScheduler - Variable in class dev.karlkadak.backend.cron.WeatherDataImportScheduler
 
taskScheduler - Variable in class dev.karlkadak.backend.cron.WeatherDataImportSchedulerTest
 
taskScheduler() - Method in class dev.karlkadak.backend.config.AppConfig
 
testAll_WithCities() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
testAll_WithoutCities() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
testDefaultImport_LogsError() - Method in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
testDefaultImport_NoCitiesToFetch() - Method in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
testDefaultImport_WithCitiesToFetch_WithAllData() - Method in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
testDefaultImport_WithCitiesToFetch_WithRequiredData() - Method in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
testDisable_Failure() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
testDisable_Success() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
testDisableImporting_ExistingNotTrackedCity() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testDisableImporting_ExistingTrackedCity() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testDisableImporting_NotExistingCity() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testEnable_Failure() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
testEnable_Success() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
testEnableImporting_ExistingNotTrackedCity() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testEnableImporting_ExistingTrackedCity() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testEnableImporting_NewCity() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testOne_Failure() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
testOne_Success() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
testRetrieveCompleteCity_ExistingCity() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testRetrieveCompleteCity_FailedRequest() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testRetrieveCompleteCity_MalformedName() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testRetrieveCompleteCity_MalformedResponse() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testRetrieveCompleteCity_NewCity() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testRetrieveCompleteCity_NotExistingCity() - Method in class dev.karlkadak.backend.service.CityManagerTest
 
testScheduleImport() - Method in class dev.karlkadak.backend.cron.WeatherDataImportSchedulerTest
 
testWeather_Failure() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
testWeather_Success() - Method in class dev.karlkadak.backend.controller.CityControllerTest
 
timestamp - Variable in class dev.karlkadak.backend.dto.WeatherResponse
 
timestamp - Variable in class dev.karlkadak.backend.entity.WeatherData
UNIX timestamp of the data calculation, UTC

W

weather(Long) - Method in class dev.karlkadak.backend.controller.CityController
API endpoint for requesting the most recent weather data linked to a City object
WeatherData - Class in dev.karlkadak.backend.entity
Class representing a single point of gathered weather data for a single city
WeatherData(City, long, Double, Double, Integer, String) - Constructor for class dev.karlkadak.backend.entity.WeatherData
Default constructor
weatherDataImporter - Variable in class dev.karlkadak.backend.cron.WeatherDataImportScheduler
 
weatherDataImporter - Variable in class dev.karlkadak.backend.cron.WeatherDataImportSchedulerTest
 
weatherDataImporter - Variable in class dev.karlkadak.backend.service.CityManager
 
weatherDataImporter - Variable in class dev.karlkadak.backend.service.CityManagerTest
 
weatherDataImporter - Variable in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
WeatherDataImporter - Class in dev.karlkadak.backend.service
Used for importing weather data to the database from OpenWeather API
Also logs the results of imports using Logger
WeatherDataImporter(WeatherDataRepository, CityRepository, Logger, RestTemplate, ObjectMapper) - Constructor for class dev.karlkadak.backend.service.WeatherDataImporter
 
WeatherDataImporterTest - Class in dev.karlkadak.backend.service
 
WeatherDataImporterTest() - Constructor for class dev.karlkadak.backend.service.WeatherDataImporterTest
 
weatherDataImportScheduler - Variable in class dev.karlkadak.backend.cron.WeatherDataImportSchedulerTest
 
WeatherDataImportScheduler - Class in dev.karlkadak.backend.cron
Used for scheduling the weather data importing using WeatherDataImporter and ThreadPoolTaskScheduler
Also logs the scheduling of imports using Logger
WeatherDataImportScheduler(ThreadPoolTaskScheduler, WeatherDataImporter, Logger) - Constructor for class dev.karlkadak.backend.cron.WeatherDataImportScheduler
 
WeatherDataImportSchedulerTest - Class in dev.karlkadak.backend.cron
 
WeatherDataImportSchedulerTest() - Constructor for class dev.karlkadak.backend.cron.WeatherDataImportSchedulerTest
 
WeatherDataMissingException - Exception Class in dev.karlkadak.backend.exception
 
WeatherDataMissingException() - Constructor for exception class dev.karlkadak.backend.exception.WeatherDataMissingException
 
weatherDataRepository - Variable in class dev.karlkadak.backend.controller.CityController
 
weatherDataRepository - Variable in class dev.karlkadak.backend.controller.CityControllerTest
 
weatherDataRepository - Variable in class dev.karlkadak.backend.service.WeatherDataImporter
 
weatherDataRepository - Variable in class dev.karlkadak.backend.service.WeatherDataImporterTest
 
WeatherDataRepository - Interface in dev.karlkadak.backend.repository
Repository for interacting with the WeatherData table
WeatherResponse - Class in dev.karlkadak.backend.dto
Data transfer object for HTTP responses for weather data requests
WeatherResponse(WeatherData) - Constructor for class dev.karlkadak.backend.dto.WeatherResponse
Default constructor, build the WeatherResponse.iconHref URL if given WeatherData object's iconCode is not null
WebConfig - Class in dev.karlkadak.backend.config
Configuration class to set up global CORS settings, ensures the backend application allows cross-origin requests from the React frontend
WebConfig() - Constructor for class dev.karlkadak.backend.config.WebConfig
 
windSpeed - Variable in class dev.karlkadak.backend.dto.WeatherResponse
 
windSpeed - Variable in class dev.karlkadak.backend.entity.WeatherData
Wind speed at time of data calculation, meter/sec
Null in case of missing value
A B C D E F G H I L M N O R S T W 
All Classes and Interfaces|All Packages|Serialized Form