Credential.java
/*
* Java Trust Project.
* Copyright (C) 2010 FedICT.
* Copyright (C) 2022 e-Contract.be BV.
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License version
* 3.0 as published by the Free Software Foundation.
*
* This software is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this software; if not, see
* http://www.gnu.org/licenses/.
*/
package be.fedict.trust;
/**
* Stores a credential required to access a protected PKI online service.
*
* @author Frank Cornelis
*
*/
public class Credential {
private final String host;
private final int port;
private final String realm;
private final String scheme;
private final String username;
private final String password;
/**
* Main constructor.
*
* @param host the service host which requires the credential.
* @param port the service port which requires the credential.
* @param realm the service realm which requires the credential.
* @param scheme the service scheme which requires the credential.
* @param username the username.
* @param password the password.
*/
public Credential(String host, int port, String realm, String scheme, String username, String password) {
this.host = host;
this.port = port;
this.realm = realm;
this.scheme = scheme;
this.username = username;
this.password = password;
}
/**
* Any scheme is allowed.
*
* @param host
* @param port
* @param realm
* @param username
* @param password
*/
public Credential(String host, int port, String realm, String username, String password) {
this(host, port, realm, null, username, password);
}
/**
* Any scheme and any realm is allowed.
*
* @param host
* @param port
* @param username
* @param password
*/
public Credential(String host, int port, String username, String password) {
this(host, port, null, username, password);
}
/**
* Any scheme, realm and port is allowed.
*
* @param host
* @param username
* @param password
*/
public Credential(String host, String username, String password) {
this(host, -1, username, password);
}
/**
* Any scheme, realm, port and host is allowed.
*
* @param username
* @param password
*/
public Credential(String username, String password) {
this(null, username, password);
}
public String getHost() {
return this.host;
}
public int getPort() {
return this.port;
}
public String getRealm() {
return this.realm;
}
public String getScheme() {
return this.scheme;
}
public String getUsername() {
return this.username;
}
public String getPassword() {
return this.password;
}
}