Made GSM library consistent with Firelance.
This commit is contained in:
@@ -10,7 +10,8 @@ namespace DevConsole
|
||||
{
|
||||
class Program
|
||||
{
|
||||
public static readonly GsmRO gsmRO = new GsmRO();
|
||||
public static GsmMgr gsmMgr = new GsmMgr();
|
||||
public static GsmRO gsmRO;
|
||||
public static FirelanceMgr flcMgr = new FirelanceMgr();
|
||||
public static FirelanceCRUD flcCRUD;
|
||||
|
||||
@@ -56,8 +57,9 @@ namespace DevConsole
|
||||
|
||||
private static void ConnectToGsmDb()
|
||||
{
|
||||
gsmRO.OpenConnection(@"C:\Users\Dunestorm\Projects\FireLance\GSMParser\games.db", 0);
|
||||
Console.WriteLine($"GSMParser Connection State: {gsmRO.IsConnectionOpen()}");
|
||||
gsmMgr.OpenConnection(@"C:\Users\Dunestorm\Projects\FireLance\GSMParser\games.db", 0);
|
||||
gsmRO = new GsmRO(gsmMgr.Database);
|
||||
Console.WriteLine($"GSMParser Connection State: {gsmMgr.IsConnectionOpen()}");
|
||||
}
|
||||
|
||||
private static void ConnectToFirelanceManager()
|
||||
@@ -88,7 +90,7 @@ namespace DevConsole
|
||||
ConnectToGsmDb();
|
||||
break;
|
||||
case "B":
|
||||
gsmRO.CloseCurrentConnection();
|
||||
gsmMgr.CloseCurrentConnection();
|
||||
break;
|
||||
case "C":
|
||||
ConnectToFirelanceManager();
|
||||
|
||||
@@ -7,7 +7,7 @@ namespace FireLance
|
||||
{
|
||||
public class FirelanceCRUD : IFlcMongoDBConnecton
|
||||
{
|
||||
public IMongoDatabase Database { get; set; }
|
||||
public IMongoDatabase Database { get; private set; }
|
||||
public FirelanceCRUD(IMongoDatabase db)
|
||||
{
|
||||
Database = db;
|
||||
|
||||
@@ -2,12 +2,13 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using FireLance.Interfaces;
|
||||
using GSMParser.Inferfaces;
|
||||
|
||||
namespace Gsm
|
||||
{
|
||||
public abstract class GsmDB : IFlcBaseDBConnection
|
||||
public class GsmMgr : IFlcBaseDBConnection, IGsmSqliteDBConnection
|
||||
{
|
||||
internal SqliteConnection DBConnection = new SqliteConnection();
|
||||
public SqliteConnection Database { get; private set; }
|
||||
|
||||
public void OpenConnection(string dbLocation, int port)
|
||||
{
|
||||
@@ -16,18 +17,18 @@ namespace Gsm
|
||||
throw new FileNotFoundException(dbLocation);
|
||||
}
|
||||
|
||||
DBConnection = new SqliteConnection($"Data Source={dbLocation};Mode=ReadOnly");
|
||||
DBConnection.Open();
|
||||
Database = new SqliteConnection($"Data Source={dbLocation};Mode=ReadOnly");
|
||||
Database.Open();
|
||||
}
|
||||
|
||||
public void CloseCurrentConnection()
|
||||
{
|
||||
DBConnection.Close();
|
||||
Database.Close();
|
||||
}
|
||||
|
||||
public bool IsConnectionOpen()
|
||||
{
|
||||
return Convert.ToBoolean(DBConnection.State);
|
||||
return Convert.ToBoolean(Database.State);
|
||||
}
|
||||
}
|
||||
}
|
||||
+10
-2
@@ -1,9 +1,11 @@
|
||||
using Dapper;
|
||||
using GSMParser.Inferfaces;
|
||||
using Microsoft.Data.Sqlite;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Gsm
|
||||
{
|
||||
public class GsmRO : GsmDB
|
||||
public class GsmRO : IGsmSqliteDBConnection
|
||||
{
|
||||
public static class Tables
|
||||
{
|
||||
@@ -19,6 +21,12 @@ namespace Gsm
|
||||
public static string GameName { get { return "GameName"; } }
|
||||
}
|
||||
|
||||
public SqliteConnection Database { get; private set; }
|
||||
public GsmRO(SqliteConnection db)
|
||||
{
|
||||
Database = db;
|
||||
}
|
||||
|
||||
public List<T> LoadRecords<T>(string select, string from, string column, string query, bool exactMatch)
|
||||
{
|
||||
string command = $"SELECT \"{select}\",*" +
|
||||
@@ -34,7 +42,7 @@ namespace Gsm
|
||||
command += $"LIKE \"%{query}%\"";
|
||||
}
|
||||
|
||||
return (List<T>) DBConnection.Query<T>(command, new DynamicParameters());
|
||||
return (List<T>) Database.Query<T>(command, new DynamicParameters());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
using Microsoft.Data.Sqlite;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace GSMParser.Inferfaces
|
||||
{
|
||||
public interface IGsmSqliteDBConnection
|
||||
{
|
||||
public SqliteConnection Database { get; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user