diff --git a/src/main/java/io/apimatic/coreinterfaces/authentication/Authentication.java b/src/main/java/io/apimatic/coreinterfaces/authentication/Authentication.java index 6cd4cc4..2a23552 100644 --- a/src/main/java/io/apimatic/coreinterfaces/authentication/Authentication.java +++ b/src/main/java/io/apimatic/coreinterfaces/authentication/Authentication.java @@ -5,17 +5,59 @@ /** * To setup methods for authentication */ -public interface Authentication { +public abstract class Authentication { /** - * Apply the authentication on the httpRequest - * @param httpRequest the request on which authentication is being applied - * @return the authenticated request + * Stores the validity of the auth scheme. */ - Request apply(Request httpRequest); + private boolean isValid; /** - * Validates the auth params for the httpRequest + * Stores the error message for the auth scheme. */ - void validate(); + private String errorMessage; + + /** + * Applies the authentication on the httpRequest. + * @param httpRequest the request on which authentication is being applied. + * @return the authenticated request. + */ + public abstract Request apply(Request httpRequest); + + /** + * Validates the credentials for authentication. + */ + public abstract void validate(); + + /** + * Checks if the auth credentials are valid. + * @return true if the auth credentials are valid, false otherwise. + */ + public boolean isValid() { + return isValid; + } + + /** + * Sets the validatity of the auth credentials. + * @param isValid the flag to set for validity. + */ + public void setValidity(boolean isValid) { + this.isValid = isValid; + } + + /** + * Returns the error message if the auth credentials are not valid. + * @return the string message whenever the auth credentials are not valid. + */ + public String getErrorMessage() { + return errorMessage; + } + + /** + * Sets the error message for invalid auth credentials. + * @param errorMessage the error message to set. + */ + public void setErrorMessage(String errorMessage) { + this.errorMessage = errorMessage; + } }