Mass refactoring for FireLance
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
using FireLance.Interfaces;
|
||||
using FireLance.Model;
|
||||
using FireLance;
|
||||
using FireLance.Models;
|
||||
using Gsm;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
@@ -7,8 +8,8 @@ namespace DevConsole
|
||||
{
|
||||
class Program
|
||||
{
|
||||
public static GSMParser.DatabaseConnection gsmParser = new GSMParser.DatabaseConnection();
|
||||
public static FireLance.DatabaseConnection flcParser = new FireLance.DatabaseConnection();
|
||||
public static GsmDB gsmParser = new GsmDB();
|
||||
public static FireLanceCRUD fireLanceCRUD = new FireLanceCRUD();
|
||||
|
||||
static void Main(string[] args)
|
||||
{
|
||||
@@ -122,14 +123,14 @@ namespace DevConsole
|
||||
{
|
||||
case ConsoleKey.A:
|
||||
Console.WriteLine("Connect to database");
|
||||
flcParser.OpenConnection("sr3", 27017);
|
||||
fireLanceCRUD.OpenConnection("sr3", 27017);
|
||||
break;
|
||||
case ConsoleKey.B:
|
||||
flcParser.CloseCurrentConnection();
|
||||
fireLanceCRUD.CloseCurrentConnection();
|
||||
break;
|
||||
}
|
||||
|
||||
Console.WriteLine($"FireLance Connection State: {flcParser.IsConnectionOpen()}\n");
|
||||
Console.WriteLine($"FireLance Connection State: {fireLanceCRUD.IsConnectionOpen()}\n");
|
||||
}
|
||||
|
||||
private static void OptionF()
|
||||
@@ -139,7 +140,7 @@ namespace DevConsole
|
||||
foreach (var entry in dm)
|
||||
{
|
||||
//entry.Path = guid.ToString();
|
||||
flcParser.InsertRecord("SaveData", entry);
|
||||
fireLanceCRUD.InsertRecord("SaveData", entry);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -6,40 +6,15 @@ using System.Collections.Generic;
|
||||
|
||||
namespace FireLance
|
||||
{
|
||||
public class DatabaseConnection : IDatabaseConnection
|
||||
public class FireLanceCRUD : FireLanceDB, IDatabaseCRUD
|
||||
{
|
||||
IMongoDatabase db;
|
||||
|
||||
public void CloseCurrentConnection()
|
||||
{
|
||||
OpenConnection(string.Empty, 0);
|
||||
}
|
||||
|
||||
public bool IsConnectionOpen()
|
||||
{
|
||||
int connectionCnt = 0;
|
||||
|
||||
try { connectionCnt = db.Client.ListDatabases().ToList().Count; }
|
||||
catch {}
|
||||
|
||||
return (connectionCnt > 0) ? true : false;
|
||||
}
|
||||
|
||||
public void OpenConnection(string dbLocation, int port)
|
||||
{
|
||||
var client = new MongoClient($"mongodb://{dbLocation}:{port}");
|
||||
var settings = new MongoDatabaseSettings { GuidRepresentation = GuidRepresentation.Standard };
|
||||
|
||||
db = client.GetDatabase(dbLocation, settings);
|
||||
}
|
||||
|
||||
public void InsertRecord<T>(string table, T record)
|
||||
{
|
||||
var collection = db.GetCollection<T>(table);
|
||||
collection.InsertOne(record);
|
||||
}
|
||||
|
||||
public void UpsertRecord<T>(string table, Guid id, T record)
|
||||
public void UpsertRecordById<T>(string table, Guid id, T record)
|
||||
{
|
||||
var collection = db.GetCollection<T>(table);
|
||||
collection.ReplaceOne(
|
||||
@@ -48,7 +23,7 @@ namespace FireLance
|
||||
new ReplaceOptions { IsUpsert = true });
|
||||
}
|
||||
|
||||
public List<T> LoadRecords<T>(string table)
|
||||
public List<T> LoadRecordsFromTable<T>(string table)
|
||||
{
|
||||
var collection = db.GetCollection<T>(table);
|
||||
return collection.Find(new BsonDocument()).ToList();
|
||||
@@ -0,0 +1,34 @@
|
||||
using FireLance.Interfaces;
|
||||
using MongoDB.Bson;
|
||||
using MongoDB.Driver;
|
||||
|
||||
namespace FireLance
|
||||
{
|
||||
public abstract class FireLanceDB : IDatabaseConnection
|
||||
{
|
||||
internal IMongoDatabase db;
|
||||
|
||||
public void CloseCurrentConnection()
|
||||
{
|
||||
OpenConnection(string.Empty, 0);
|
||||
}
|
||||
|
||||
public bool IsConnectionOpen()
|
||||
{
|
||||
int connectionCnt = 0;
|
||||
|
||||
try { connectionCnt = db.Client.ListDatabases().ToList().Count; }
|
||||
catch {}
|
||||
|
||||
return (connectionCnt > 0) ? true : false;
|
||||
}
|
||||
|
||||
public void OpenConnection(string dbLocation, int port)
|
||||
{
|
||||
var client = new MongoClient($"mongodb://{dbLocation}:{port}");
|
||||
var settings = new MongoDatabaseSettings { GuidRepresentation = GuidRepresentation.Standard };
|
||||
|
||||
db = client.GetDatabase(dbLocation, settings);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace FireLance
|
||||
{
|
||||
public interface IDatabaseCRUD
|
||||
{
|
||||
public void InsertRecord<T>(string table, T record);
|
||||
|
||||
public void UpsertRecordById<T>(string table, Guid id, T record);
|
||||
|
||||
public List<T> LoadRecordsFromTable<T>(string table);
|
||||
|
||||
public T LoadRecordById<T>(string table, Guid id);
|
||||
|
||||
public void DeleteRecordById<T>(string table, Guid id);
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace FireLance.Model
|
||||
namespace FireLance.Models
|
||||
{
|
||||
public class DirectoriesModel
|
||||
{
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace FireLance.Model
|
||||
namespace FireLance.Models
|
||||
{
|
||||
public class GameEntryModel
|
||||
{
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
using MongoDB.Bson;
|
||||
using MongoDB.Bson.Serialization.Attributes;
|
||||
using MongoDB.Bson.Serialization.Attributes;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace FireLance.Models
|
||||
{
|
||||
|
||||
@@ -4,11 +4,11 @@ using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using Dapper;
|
||||
using FireLance.Interfaces;
|
||||
using FireLance.Model;
|
||||
using FireLance.Models;
|
||||
|
||||
namespace GSMParser
|
||||
namespace Gsm
|
||||
{
|
||||
public class DatabaseConnection : IDatabaseConnection
|
||||
public class GsmDB : IDatabaseConnection
|
||||
{
|
||||
private SqliteConnection DBConnection = new SqliteConnection();
|
||||
|
||||
Reference in New Issue
Block a user