public void CreateNewSource(enSourceType type) { switch (type) { case enSourceType.SqlDatabase: _shell.NewSqlServerSource(string.Empty); break; case enSourceType.MySqlDatabase: _shell.NewMySqlSource(string.Empty); break; case enSourceType.PostgreSQL: _shell.NewPostgreSqlSource(string.Empty); break; case enSourceType.Oracle: _shell.NewOracleSource(string.Empty); break; case enSourceType.ODBC: _shell.NewOdbcSource(string.Empty); break; default: throw new ArgumentException("Unrecognized Source Type: " + type.ToString()); } }
public void EditSource(IDbSource selectedSource, enSourceType type) { switch (type) { case enSourceType.SqlDatabase: _shell.EditSqlServerResource(selectedSource); break; case enSourceType.MySqlDatabase: _shell.EditMySqlResource(selectedSource); break; case enSourceType.PostgreSQL: _shell.EditPostgreSqlResource(selectedSource); break; case enSourceType.Oracle: _shell.EditOracleResource(selectedSource); break; case enSourceType.ODBC: _shell.EditOdbcResource(selectedSource); break; default: throw new ArgumentException("Unrecognized Source Type: " + type.ToString()); } }
public IEnumerable GetModels(Guid workspaceID, enSourceType sourceType) { var workspaceResources = GetResources(workspaceID); var resources = workspaceResources.FindAll(r => r.ResourceType == sourceType.ToString()); if (sourceType == enSourceType.MySqlDatabase || sourceType == enSourceType.Oracle || sourceType == enSourceType.PostgreSQL || sourceType == enSourceType.SqlDatabase || sourceType == enSourceType.ODBC) { var oldResources = workspaceResources.FindAll(r => r.ResourceType.ToUpper() == "DbSource".ToUpper()); foreach (var oldResource in oldResources) { if (!resources.Exists(resource => resource.ResourceID == oldResource.ResourceID)) { resources.Add(oldResource); } } } var commands = new Dictionary <enSourceType, Func <IEnumerable> > { { enSourceType.Dev2Server, () => BuildSourceList <Connection>(resources) }, { enSourceType.EmailSource, () => BuildSourceList <EmailSource>(resources) }, { enSourceType.SqlDatabase, () => BuildSourceList <DbSource>(resources) }, { enSourceType.MySqlDatabase, () => BuildSourceList <DbSource>(resources) }, { enSourceType.PostgreSQL, () => BuildSourceList <DbSource>(resources) }, { enSourceType.Oracle, () => BuildSourceList <DbSource>(resources) }, { enSourceType.ODBC, () => BuildSourceList <DbSource>(resources) }, { enSourceType.PluginSource, () => BuildSourceList <PluginSource>(resources) }, { enSourceType.WebSource, () => BuildSourceList <WebSource>(resources) }, { enSourceType.OauthSource, () => BuildSourceList <DropBoxSource>(resources) }, { enSourceType.SharepointServerSource, () => BuildSourceList <SharepointSource>(resources) }, { enSourceType.ExchangeSource, () => BuildSourceList <ExchangeSource>(resources) }, { enSourceType.RedisSource, () => BuildSourceList <RedisSource>(resources) } }; var result = commands.ContainsKey(sourceType) ? commands[sourceType].Invoke() : null; return(result); }