Mass refactoring for FireLance
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
using FireLance.Interfaces;
|
using FireLance;
|
||||||
using FireLance.Model;
|
using FireLance.Models;
|
||||||
|
using Gsm;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|
||||||
@@ -7,8 +8,8 @@ namespace DevConsole
|
|||||||
{
|
{
|
||||||
class Program
|
class Program
|
||||||
{
|
{
|
||||||
public static GSMParser.DatabaseConnection gsmParser = new GSMParser.DatabaseConnection();
|
public static GsmDB gsmParser = new GsmDB();
|
||||||
public static FireLance.DatabaseConnection flcParser = new FireLance.DatabaseConnection();
|
public static FireLanceCRUD fireLanceCRUD = new FireLanceCRUD();
|
||||||
|
|
||||||
static void Main(string[] args)
|
static void Main(string[] args)
|
||||||
{
|
{
|
||||||
@@ -122,14 +123,14 @@ namespace DevConsole
|
|||||||
{
|
{
|
||||||
case ConsoleKey.A:
|
case ConsoleKey.A:
|
||||||
Console.WriteLine("Connect to database");
|
Console.WriteLine("Connect to database");
|
||||||
flcParser.OpenConnection("sr3", 27017);
|
fireLanceCRUD.OpenConnection("sr3", 27017);
|
||||||
break;
|
break;
|
||||||
case ConsoleKey.B:
|
case ConsoleKey.B:
|
||||||
flcParser.CloseCurrentConnection();
|
fireLanceCRUD.CloseCurrentConnection();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
Console.WriteLine($"FireLance Connection State: {flcParser.IsConnectionOpen()}\n");
|
Console.WriteLine($"FireLance Connection State: {fireLanceCRUD.IsConnectionOpen()}\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void OptionF()
|
private static void OptionF()
|
||||||
@@ -139,7 +140,7 @@ namespace DevConsole
|
|||||||
foreach (var entry in dm)
|
foreach (var entry in dm)
|
||||||
{
|
{
|
||||||
//entry.Path = guid.ToString();
|
//entry.Path = guid.ToString();
|
||||||
flcParser.InsertRecord("SaveData", entry);
|
fireLanceCRUD.InsertRecord("SaveData", entry);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|||||||
@@ -6,40 +6,15 @@ using System.Collections.Generic;
|
|||||||
|
|
||||||
namespace FireLance
|
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)
|
public void InsertRecord<T>(string table, T record)
|
||||||
{
|
{
|
||||||
var collection = db.GetCollection<T>(table);
|
var collection = db.GetCollection<T>(table);
|
||||||
collection.InsertOne(record);
|
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);
|
var collection = db.GetCollection<T>(table);
|
||||||
collection.ReplaceOne(
|
collection.ReplaceOne(
|
||||||
@@ -48,7 +23,7 @@ namespace FireLance
|
|||||||
new ReplaceOptions { IsUpsert = true });
|
new ReplaceOptions { IsUpsert = true });
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<T> LoadRecords<T>(string table)
|
public List<T> LoadRecordsFromTable<T>(string table)
|
||||||
{
|
{
|
||||||
var collection = db.GetCollection<T>(table);
|
var collection = db.GetCollection<T>(table);
|
||||||
return collection.Find(new BsonDocument()).ToList();
|
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
|
public class DirectoriesModel
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
namespace FireLance.Model
|
namespace FireLance.Models
|
||||||
{
|
{
|
||||||
public class GameEntryModel
|
public class GameEntryModel
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
using MongoDB.Bson;
|
using MongoDB.Bson.Serialization.Attributes;
|
||||||
using MongoDB.Bson.Serialization.Attributes;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace FireLance.Models
|
namespace FireLance.Models
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -4,11 +4,11 @@ using System.Collections.Generic;
|
|||||||
using System.IO;
|
using System.IO;
|
||||||
using Dapper;
|
using Dapper;
|
||||||
using FireLance.Interfaces;
|
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();
|
private SqliteConnection DBConnection = new SqliteConnection();
|
||||||
|
|
||||||
Reference in New Issue
Block a user