Browse Source

work in progress - added more detail around connection, metadata and object view management

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@1619 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Dickon Field 19 years ago
parent
commit
ec61089521
  1. 17
      src/AddIns/Misc/SharpDbTools/Project/SharpDbTools.csproj
  2. 0
      src/AddIns/Misc/SharpDbTools/Project/Src/Connection/ConnectionStringDefinitionDialog.Designer.cs
  3. 0
      src/AddIns/Misc/SharpDbTools/Project/Src/Connection/ConnectionStringDefinitionDialog.cs
  4. 0
      src/AddIns/Misc/SharpDbTools/Project/Src/Connection/ConnectionStringDefinitionDialog.resx
  5. 0
      src/AddIns/Misc/SharpDbTools/Project/Src/Connection/DbProvidersService.cs
  6. 44
      src/AddIns/Misc/SharpDbTools/Project/Src/Model/DbConnectionInfo.cs
  7. 43
      src/AddIns/Misc/SharpDbTools/Project/Src/Model/DbConnectionInfoStorage.cs
  8. 10
      src/AddIns/Misc/SharpDbTools/Project/Src/Model/DbModelInfo.cs
  9. 12
      src/AddIns/Misc/SharpDbTools/Project/Src/Model/IConnectionInfo.cs
  10. 7
      src/AddIns/Misc/SharpDbTools/Project/Src/ServerBrowserTool.cs
  11. 21
      src/AddIns/Misc/SharpDbTools/Project/Src/ServerBrowserToolController.cs
  12. 20
      src/AddIns/Misc/SharpDbTools/Project/Src/Viewer/IViewer.cs
  13. 35
      src/AddIns/Misc/SharpDbTools/Project/Src/Viewer/ViewerFactory.cs

17
src/AddIns/Misc/SharpDbTools/Project/SharpDbTools.csproj

@ -50,15 +50,19 @@ @@ -50,15 +50,19 @@
<EmbeddedResource Include="Resources\MyUserControl.xfrm" />
<Compile Include="Src\ServerBrowserTool.cs" />
<Compile Include="Configuration\AssemblyInfo.cs" />
<Compile Include="Src\DbProvidersService.cs" />
<Compile Include="Src\ConnectionStringDefinitionDialog.cs" />
<Compile Include="Src\ConnectionStringDefinitionDialog.Designer.cs" />
<EmbeddedResource Include="Src\ConnectionStringDefinitionDialog.resx">
<DependentUpon>ConnectionStringDefinitionDialog.cs</DependentUpon>
</EmbeddedResource>
<Compile Include="Src\Model\DbConnectionInfo.cs" />
<Compile Include="Src\Model\DbModelInfo.cs" />
<Compile Include="Src\Connection\ConnectionStringDefinitionDialog.cs" />
<EmbeddedResource Include="Src\Connection\ConnectionStringDefinitionDialog.resx">
<DependentUpon>ConnectionStringDefinitionDialog.cs</DependentUpon>
</EmbeddedResource>
<Compile Include="Src\Connection\ConnectionStringDefinitionDialog.Designer.cs" />
<Compile Include="Src\Connection\DbProvidersService.cs" />
<Compile Include="Src\ServerBrowserToolController.cs" />
<Compile Include="Src\Model\DbConnectionInfoStorage.cs" />
<Compile Include="Src\Model\IConnectionInfo.cs" />
<Compile Include="Src\Viewer\ViewerFactory.cs" />
<Compile Include="Src\Viewer\IViewer.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="Src\Model" />
@ -71,6 +75,7 @@ @@ -71,6 +75,7 @@
<Project>{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}</Project>
<Name>ICSharpCode.Core</Name>
</ProjectReference>
<Folder Include="Src\Viewer" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />
</Project>

0
src/AddIns/Misc/SharpDbTools/Project/Src/ConnectionStringDefinitionDialog.Designer.cs → src/AddIns/Misc/SharpDbTools/Project/Src/Connection/ConnectionStringDefinitionDialog.Designer.cs generated

0
src/AddIns/Misc/SharpDbTools/Project/Src/ConnectionStringDefinitionDialog.cs → src/AddIns/Misc/SharpDbTools/Project/Src/Connection/ConnectionStringDefinitionDialog.cs

0
src/AddIns/Misc/SharpDbTools/Project/Src/ConnectionStringDefinitionDialog.resx → src/AddIns/Misc/SharpDbTools/Project/Src/Connection/ConnectionStringDefinitionDialog.resx

0
src/AddIns/Misc/SharpDbTools/Project/Src/DbProvidersService.cs → src/AddIns/Misc/SharpDbTools/Project/Src/Connection/DbProvidersService.cs

44
src/AddIns/Misc/SharpDbTools/Project/Src/Model/DbConnectionInfo.cs

@ -14,7 +14,13 @@ using ICSharpCode.Core; @@ -14,7 +14,13 @@ using ICSharpCode.Core;
namespace SharpDbTools.Model
{
/// <summary>
/// Description of ConnectionInfo.
/// DbConnectionInfo object is in essence a client side cache of database
/// connection information that can be used disconnected from the database
/// for query editing and validation, database browsing etc.
///
/// It is persisted as an XML element into local storage, and can subsequently
/// be either used independently or refreshed from the database server.
///
/// </summary>
public class DbConnectionInfo: IConnectionInfo, IDisposable
{
@ -36,24 +42,37 @@ namespace SharpDbTools.Model @@ -36,24 +42,37 @@ namespace SharpDbTools.Model
this.invariantName = invariantName;
}
public bool HasConnection
{
get
{
public string Name {
get {
return name;
}
}
public string InvariantName {
get {
return invariantName;
}
}
public string ConnectionString {
get {
return connectionString;
}
}
public bool HasConnection {
get {
return !(connection == null);
}
}
public bool HasModel
{
get
{
public bool HasModel {
get {
return !(dbModel == null);
}
}
public DbConnection Connection
{
public DbConnection Connection {
get {
// return connection if defined else try and create it
if (connection != null) {
@ -69,8 +88,7 @@ namespace SharpDbTools.Model @@ -69,8 +88,7 @@ namespace SharpDbTools.Model
}
}
public DataSet DbModel
{
public DataSet DbModel {
get
{
if (dbModel == null)

43
src/AddIns/Misc/SharpDbTools/Project/Src/Model/DbConnectionInfoStorage.cs

@ -0,0 +1,43 @@ @@ -0,0 +1,43 @@
/*
* User: Dickon Field
* Date: 20/07/2006
* Time: 19:07
*
*/
using System;
using System.Collections.Generic;
namespace SharpDbTools.Model
{
/// <summary>
/// Description of ConnectionInfoStorage.
/// </summary>
public class DbConnectionInfoStorage
{
const string CONNECTION_INFO_STORAGE_FILE_NAME = "ConnectionInfo.xml";
static DbConnectionInfoStorage instance = new DbConnectionInfoStorage();
private DbConnectionInfoStorage()
{
// TODO: retrieve ConnectionInfo objects from an xml file
}
public static DbConnectionInfoStorage GetInstance()
{
return instance;
}
public void AddConnectionInfo(DbConnectionInfo connectionInfo)
{
// TODO: store ConnectionInfo in an xml file
}
public List<DbConnectionInfo> GetConnectionInfoCollection()
{
// TODO: return
return null;
}
}
}

10
src/AddIns/Misc/SharpDbTools/Project/Src/Model/DbModelInfo.cs

@ -7,6 +7,7 @@ @@ -7,6 +7,7 @@
using System;
using System.Data;
using System.Data.Common;
using System.Collections.Generic;
namespace SharpDbTools.Model
@ -28,5 +29,14 @@ namespace SharpDbTools.Model @@ -28,5 +29,14 @@ namespace SharpDbTools.Model
public DbModelInfo()
{
}
public DataTable MetaDataCollections {
get {
return this.Tables[METADATACOLLECTIONS];
}
}
// TODO: an indexed property of MetaDataCollection
//public
}
}

12
src/AddIns/Misc/SharpDbTools/Project/Src/Model/IConnectionInfo.cs

@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
/*
* User: Dickon Field
* Date: 10/07/2006
* Time: 09:23
* User: dickon
* Date: 25/07/2006
* Time: 22:11
*
*/
@ -10,7 +10,10 @@ using System; @@ -10,7 +10,10 @@ using System;
namespace SharpDbTools.Model
{
/// <summary>
/// Presents the basic contract for ConnectionInfo classes
/// Defines the basic contract for an IConnectionInfo object. The basic idea
/// is to flag the current state of the underlying connection - has a connection
/// been made based on the information in the IConnectionInfo object? Has the
/// underlying model been built from the connection?
/// </summary>
public interface IConnectionInfo
{
@ -18,7 +21,6 @@ namespace SharpDbTools.Model @@ -18,7 +21,6 @@ namespace SharpDbTools.Model
{
get;
}
bool HasModel
{
get;

7
src/AddIns/Misc/SharpDbTools/Project/Src/ServerBrowserTool.cs

@ -18,13 +18,20 @@ namespace SharpDbTools @@ -18,13 +18,20 @@ namespace SharpDbTools
public class ServerBrowserTool : AbstractPadContent
{
Panel ctl;
ServerBrowserToolController controller;
/// <summary>
///
/// </summary>
public ServerBrowserTool()
{
controller = new ServerBrowserToolController();
TreeView dbTree = new TreeView();
ctl = new Panel();
ctl.Controls.Add(dbTree);
TreeNode node = new TreeNode("test");
dbTree.Nodes.Add(node);
}
/// <summary>

21
src/AddIns/Misc/SharpDbTools/Project/Src/ServerBrowserToolController.cs

@ -0,0 +1,21 @@ @@ -0,0 +1,21 @@
/*
* User: Dickon Field
* Date: 19/07/2006
* Time: 23:19
*
*/
using System;
namespace SharpDbTools
{
/// <summary>
/// Description of Class1.
/// </summary>
public class ServerBrowserToolController
{
public ServerBrowserToolController()
{
}
}
}

20
src/AddIns/Misc/SharpDbTools/Project/Src/Viewer/IViewer.cs

@ -0,0 +1,20 @@ @@ -0,0 +1,20 @@
/*
* User: dickon
* Date: 26/07/2006
* Time: 01:14
*
*/
using System;
namespace SharpDbTools.Viewer
{
/// <summary>
/// Defines the contract supported by a db metadata collection
/// viewer
/// </summary>
public interface IViewer
{
}
}

35
src/AddIns/Misc/SharpDbTools/Project/Src/Viewer/ViewerFactory.cs

@ -0,0 +1,35 @@ @@ -0,0 +1,35 @@
/*
* User: dickon
* Date: 26/07/2006
* Time: 01:07
*
*/
using System;
using SharpDbTools.Model;
namespace SharpDbTools.Viewer
{
/// <summary>
/// Description of ViewerFactory.
/// </summary>
public class ViewerFactory
{
static ViewerFactory instance = new ViewerFactory();
ViewerFactory()
{
}
public static ViewerFactory GetInstance()
{
return instance;
}
public static IViewer GetViewer(string metaDataCollectionName,
DbConnectionInfo connectionInfo)
{
return null;
}
}
}
Loading…
Cancel
Save