/* * Copyright (C) 2011, Roberto Tyley 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.api; import org.eclipse.jgit.transport.Transport; /** * Receives a callback allowing type-specific configuration to be set * on the Transport instance after it's been created. *

* This allows consumers of the JGit command API to perform custom * configuration that would be difficult anticipate and expose on the * API command builders. *

* For instance, if a client needs to replace the SshSessionFactorys * on any SSHTransport used (eg to control available SSH identities), * they can set the TransportConfigCallback on the JGit API command - * once the transport has been created by the command, the callback * will be invoked and passed the transport instance, which the * client can then inspect and configure as necessary. */ public interface TransportConfigCallback { /** * Add any additional transport-specific configuration required. * * @param transport * a {@link org.eclipse.jgit.transport.Transport} object. */ void configure(Transport transport); }