Package com.patreonshout.rest
Class WebAccountSvc
java.lang.Object
com.patreonshout.rest.BaseSvc
com.patreonshout.rest.WebAccountSvc
- All Implemented Interfaces:
WebAccountImpl
@RestController public class WebAccountSvc extends BaseSvc implements WebAccountImpl
Web Account RESTful Endpoint Interface
Responsibilities: 1) Add items to our webaccounts table in our database 2) Direct communication between the frontend portion of our application with the backend
-
Field Summary
Fields Modifier and Type Field Description (package private) WebAccountFunctionswebAccountFunctionsAn autowired Spring component that endpoints utilize to send or receive data from the database -
Constructor Summary
Constructors Constructor Description WebAccountSvc() -
Method Summary
Modifier and Type Method Description org.springframework.http.ResponseEntity<?>GetPatreonTokens(java.lang.String loginToken)Endpoint that allows retrieval of Patreon access and refresh tokens for aWebAccountcontaining the given login tokenorg.springframework.http.ResponseEntity<?>GetSocialIntegration(java.lang.String loginToken)Endpoint that returns the social integration tokens and webhook URLs for social platforms for a given login tokenorg.springframework.http.ResponseEntity<?>Login(LoginRequest loginRequest)Endpoint that will create a newWebAccountFunctionsinto the databaseorg.springframework.http.ResponseEntity<?>Logout(java.lang.String loginToken)Endpoint that will delete a login token from aWebAccountFunctionsin the databaseorg.springframework.http.HttpStatusPutSocialIntegration(PutSocialIntegrationRequest putSocialIntegrationRequest)Endpoint that allows registering, updating or deleting integrations for social platforms.org.springframework.http.HttpStatusRegister(RegisterRequest registerRequest)Endpoint that will create a newWebAccountFunctionsinto the database.org.springframework.http.ResponseEntity<?>ResetPassword(ResetPasswordRequest resetPasswordRequest)Endpoint that allowsWebAccountpassword resetting.org.springframework.http.ResponseEntity<?>Webhook(java.lang.String loginToken)Test for a webhook endpointMethods inherited from class com.patreonshout.rest.BaseSvc
catchCustomException, catchSQLIntegrityConstraintViolationExceptionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
webAccountFunctions
An autowired Spring component that endpoints utilize to send or receive data from the database
-
-
Constructor Details
-
WebAccountSvc
public WebAccountSvc()
-
-
Method Details
-
Register
public org.springframework.http.HttpStatus Register(@RequestBody RegisterRequest registerRequest) throws PSExceptionEndpoint that will create a newWebAccountFunctionsinto the database.- Specified by:
Registerin interfaceWebAccountImpl- Parameters:
registerRequest-RegisterRequestobject that contains the desired login details for a new- Returns:
HttpStatus.OKif the registration was successful,HttpStatus.CONFLICTif the account already exists- Throws:
PSException
-
Login
public org.springframework.http.ResponseEntity<?> Login(@RequestBody LoginRequest loginRequest) throws PSExceptionEndpoint that will create a newWebAccountFunctionsinto the database- Specified by:
Loginin interfaceWebAccountImpl- Parameters:
loginRequest- is the json request- Returns:
- a token signifying valid login or no token signifying invalid login
- Throws:
PSException
-
Logout
public org.springframework.http.ResponseEntity<?> Logout(@RequestParam(name="login_token") java.lang.String loginToken)Endpoint that will delete a login token from aWebAccountFunctionsin the database- Specified by:
Logoutin interfaceWebAccountImpl- Parameters:
loginToken- Login token to delete from the database- Returns:
HttpStatus.OKif successful
-
PutSocialIntegration
public org.springframework.http.HttpStatus PutSocialIntegration(@RequestBody PutSocialIntegrationRequest putSocialIntegrationRequest) throws PSExceptionEndpoint that allows registering, updating or deleting integrations for social platforms.- Specified by:
PutSocialIntegrationin interfaceWebAccountImpl- Parameters:
putSocialIntegrationRequest-PutSocialIntegrationRequestobject that containsWebAccountFunctionsand request details.- Returns:
HttpStatus.OKif successful,HttpStatus.CONFLICTif the providedPutSocialIntegrationRequestdoes not contain a validWebAccountID number.- Throws:
PSException
-
GetSocialIntegration
public org.springframework.http.ResponseEntity<?> GetSocialIntegration(@RequestParam(name="login_token") java.lang.String loginToken) throws PSExceptionEndpoint that returns the social integration tokens and webhook URLs for social platforms for a given login token- Specified by:
GetSocialIntegrationin interfaceWebAccountImpl- Parameters:
loginToken- Login token belonging to aWebAccount- Returns:
SocialIntegrationSocial integration tokens and webhook URLs- Throws:
PSException
-
GetPatreonTokens
public org.springframework.http.ResponseEntity<?> GetPatreonTokens(@RequestParam(name="login_token") java.lang.String loginToken) throws PSExceptionEndpoint that allows retrieval of Patreon access and refresh tokens for aWebAccountcontaining the given login token- Specified by:
GetPatreonTokensin interfaceWebAccountImpl- Parameters:
loginToken- Login token belonging to aWebAccount- Returns:
WebAccountPatreon access and refresh token- Throws:
PSException
-
ResetPassword
public org.springframework.http.ResponseEntity<?> ResetPassword(@RequestBody ResetPasswordRequest resetPasswordRequest) throws PSExceptionEndpoint that allowsWebAccountpassword resetting.- Specified by:
ResetPasswordin interfaceWebAccountImpl- Parameters:
resetPasswordRequest-ResetPasswordRequestobject generated from a user calling this endpoint- Returns:
HttpStatus.OKif successful,HttpStatus.UNAUTHORIZEDif the given oldPassword did not match any current passwords belonging to theWebAccountfound with the given loginToken- Throws:
PSException
-
Webhook
@PostMapping("webhook") public org.springframework.http.ResponseEntity<?> Webhook(@RequestParam(name="login_token") java.lang.String loginToken) throws PSExceptionTest for a webhook endpoint- Parameters:
loginToken- is a user's loginToken- Returns:
- an
HttpStatus.OK - Throws:
PSException- in case of a database problem or a user mismatch
-