in vault-server/src/jetbrains/buildServer/buildTriggers/vcs/vault/connection/VaultConnectionFactoryProxy.java [28:51]
public VaultConnection getOrCreateConnection(@NotNull final VaultConnectionParameters parameters) {
CONNECTIONS_LOCK.readLock().lock();
try {
if (myConnections.containsKey(parameters)) {
return myConnections.get(parameters);
}
} finally {
CONNECTIONS_LOCK.readLock().unlock();
}
CONNECTIONS_LOCK.writeLock().lock();
try {
if (myConnections.containsKey(parameters)) {
return myConnections.get(parameters);
}
final VaultConnection connection = createConnection(parameters);
myConnections.put(parameters, connection);
return connection;
} finally {
CONNECTIONS_LOCK.writeLock().unlock();
}
}