public void SetCurrentUser(IConnectionString connectionString) { if (connectionString is TextualConnectionString) { var oracleConnectionString = new OracleConnectionString(((TextualConnectionString)connectionString).ConnectionString); SetCurrentUserToOracleConnectionString(oracleConnectionString); connectionString.ConnectionString = oracleConnectionString.ConnectionString; } else if (connectionString is OracleConnectionString) { SetCurrentUserToOracleConnectionString((OracleConnectionString)connectionString); } }
private void SetCurrentUserToOracleConnectionString(OracleConnectionString oracleConnectionString) { lock (this) { if (oracleConnectionString.HasProxyUserAndPassword) { oracleConnectionString.User = OracleUserId; oracleConnectionString.Password = null; } if (!oracleConnectionString.HasUser && !oracleConnectionString.HasProxyUserAndPassword) { oracleConnectionString.User = OracleUserId; var passwordGenerator = new PasswordGenerator(_identity); oracleConnectionString.Password = passwordGenerator.GeneratePassword(); } } }