/*
 * Copyright (C) 2010, Google Inc. and others
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Distribution License v. 1.0 which is available at
 * https://www.eclipse.org/org/documents/edl-v10.php.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

package org.eclipse.jgit.transport;

import java.util.Arrays;

import org.eclipse.jgit.errors.UnsupportedCredentialItem;

Simple CredentialsProvider that always uses the same information.
/** * Simple {@link org.eclipse.jgit.transport.CredentialsProvider} that always * uses the same information. */
public class UsernamePasswordCredentialsProvider extends CredentialsProvider { private String username; private char[] password;
Initialize the provider with a single username and password.
Params:
  • username – user name
  • password – password
/** * Initialize the provider with a single username and password. * * @param username * user name * @param password * password */
public UsernamePasswordCredentialsProvider(String username, String password) { this(username, password.toCharArray()); }
Initialize the provider with a single username and password.
Params:
  • username – user name
  • password – password
/** * Initialize the provider with a single username and password. * * @param username * user name * @param password * password */
public UsernamePasswordCredentialsProvider(String username, char[] password) { this.username = username; this.password = password; }
{@inheritDoc}
/** {@inheritDoc} */
@Override public boolean isInteractive() { return false; }
{@inheritDoc}
/** {@inheritDoc} */
@Override public boolean supports(CredentialItem... items) { for (CredentialItem i : items) { if (i instanceof CredentialItem.Username) continue; else if (i instanceof CredentialItem.Password) continue; else return false; } return true; }
{@inheritDoc}
/** {@inheritDoc} */
@Override public boolean get(URIish uri, CredentialItem... items) throws UnsupportedCredentialItem { for (CredentialItem i : items) { if (i instanceof CredentialItem.Username) { ((CredentialItem.Username) i).setValue(username); continue; } if (i instanceof CredentialItem.Password) { ((CredentialItem.Password) i).setValue(password); continue; } if (i instanceof CredentialItem.StringType) { if (i.getPromptText().equals("Password: ")) { //$NON-NLS-1$ ((CredentialItem.StringType) i).setValue(new String( password)); continue; } } throw new UnsupportedCredentialItem(uri, i.getClass().getName() + ":" + i.getPromptText()); //$NON-NLS-1$ } return true; }
Destroy the saved username and password..
/** * Destroy the saved username and password.. */
public void clear() { username = null; if (password != null) { Arrays.fill(password, (char) 0); password = null; } } }