ForceConnectorConfig loadedConfig;
try {
loadedConfig = ForceConnectorConfig.loadFromName(connectionName);
} catch (IOException e) {
throw new ConnectionException("Unable to load ForceConnectorConfig for name " + connectionName, e);
}
if (loadedConfig != null) {
// Save the client id for possible later use (see initConnection)
externalClientId = loadedConfig.getClientId();
return checkConfigCache(loadedConfig, connectionName);
}
}
// Finally, try to get config from ThreadLocal
if ((config = ForceThreadLocalStore.getConnectorConfig()) != null) return config;
// Out of options. There's not enough here to construct config.
StringBuffer errorMsg = new StringBuffer();
errorMsg.append("No state was found to construct a connection.")
.append(" Please provide a ForceConnectorConfig.");
if (connectionName != null) {
errorMsg.append(" Or create a classpath properties file, environment variable or java property for the name '")
.append(connectionName).append("'");
}
throw new ConnectionException(errorMsg.toString());
}