Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}
}