#218 added AggressiveCacheEnabled option
This commit is contained in:
parent
11e00e8923
commit
6ed511cd45
@ -10848,12 +10848,17 @@
|
||||
<param name="id"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="P:RMuseum.Services.Implementation.GanjoorService.AggressiveCacheEnabled">
|
||||
<summary>
|
||||
aggressive cache
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:RMuseum.Services.Implementation.GanjoorService._context">
|
||||
<summary>
|
||||
Database Context
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RMuseum.Services.Implementation.GanjoorService._configuration">
|
||||
<member name="P:RMuseum.Services.Implementation.GanjoorService.Configuration">
|
||||
<summary>
|
||||
Configuration
|
||||
</summary>
|
||||
|
||||
@ -48,13 +48,13 @@ namespace RMuseum.Services.Implementation
|
||||
|
||||
var job = (await jobProgressServiceEF.NewJob("GanjoorService:ImportFromMySql", $"{stepCount} - start")).Result;
|
||||
|
||||
if(string.IsNullOrEmpty(_configuration.GetSection("AudioMySqlServer")["ReportedCommentsDatabase"]))
|
||||
if(string.IsNullOrEmpty(Configuration.GetSection("AudioMySqlServer")["ReportedCommentsDatabase"]))
|
||||
{
|
||||
await jobProgressServiceEF.UpdateJob(job.Id, job.Progress, "", false, "ReportedCommentsDatabase is not set");
|
||||
return;
|
||||
}
|
||||
|
||||
if (string.IsNullOrEmpty(_configuration.GetSection("AudioMySqlServer")["PoetImagesImportPath"]))
|
||||
if (string.IsNullOrEmpty(Configuration.GetSection("AudioMySqlServer")["PoetImagesImportPath"]))
|
||||
{
|
||||
await jobProgressServiceEF.UpdateJob(job.Id, job.Progress, "", false, "PoetImagesImportPath is not set");
|
||||
return;
|
||||
@ -67,7 +67,7 @@ namespace RMuseum.Services.Implementation
|
||||
|
||||
stepCount++;
|
||||
|
||||
MusicCatalogueService catalogueService = new MusicCatalogueService(_configuration, context);
|
||||
MusicCatalogueService catalogueService = new MusicCatalogueService(Configuration, context);
|
||||
|
||||
RServiceResult<bool> musicCatalogueRes = await catalogueService.ImportFromMySql($"{stepCount} MusicCatalogueImportFromMySql", jobProgressServiceEF, job);
|
||||
|
||||
@ -154,7 +154,7 @@ namespace RMuseum.Services.Implementation
|
||||
|
||||
using (MySqlConnection connection = new MySqlConnection
|
||||
(
|
||||
$"server={_configuration.GetSection("AudioMySqlServer")["Server"]};uid={_configuration.GetSection("AudioMySqlServer")["Username"]};pwd={_configuration.GetSection("AudioMySqlServer")["Password"]};database={_configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True"
|
||||
$"server={Configuration.GetSection("AudioMySqlServer")["Server"]};uid={Configuration.GetSection("AudioMySqlServer")["Username"]};pwd={Configuration.GetSection("AudioMySqlServer")["Password"]};database={Configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True"
|
||||
))
|
||||
{
|
||||
connection.Open();
|
||||
@ -360,7 +360,7 @@ namespace RMuseum.Services.Implementation
|
||||
|
||||
using (MySqlConnection connection = new MySqlConnection
|
||||
(
|
||||
$"server={_configuration.GetSection("AudioMySqlServer")["Server"]};uid={_configuration.GetSection("AudioMySqlServer")["Username"]};pwd={_configuration.GetSection("AudioMySqlServer")["Password"]};database={_configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True"
|
||||
$"server={Configuration.GetSection("AudioMySqlServer")["Server"]};uid={Configuration.GetSection("AudioMySqlServer")["Username"]};pwd={Configuration.GetSection("AudioMySqlServer")["Password"]};database={Configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True"
|
||||
))
|
||||
{
|
||||
connection.Open();
|
||||
@ -464,7 +464,7 @@ namespace RMuseum.Services.Implementation
|
||||
|
||||
using (MySqlConnection connection = new MySqlConnection
|
||||
(
|
||||
$"server={_configuration.GetSection("AudioMySqlServer")["Server"]};uid={_configuration.GetSection("AudioMySqlServer")["Username"]};pwd={_configuration.GetSection("AudioMySqlServer")["Password"]};database={_configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True"
|
||||
$"server={Configuration.GetSection("AudioMySqlServer")["Server"]};uid={Configuration.GetSection("AudioMySqlServer")["Username"]};pwd={Configuration.GetSection("AudioMySqlServer")["Password"]};database={Configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True"
|
||||
))
|
||||
{
|
||||
connection.Open();
|
||||
@ -520,9 +520,9 @@ namespace RMuseum.Services.Implementation
|
||||
|
||||
string connectionString =
|
||||
approved ?
|
||||
$"server={_configuration.GetSection("AudioMySqlServer")["Server"]};uid={_configuration.GetSection("AudioMySqlServer")["Username"]};pwd={_configuration.GetSection("AudioMySqlServer")["Password"]};database={_configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True"
|
||||
$"server={Configuration.GetSection("AudioMySqlServer")["Server"]};uid={Configuration.GetSection("AudioMySqlServer")["Username"]};pwd={Configuration.GetSection("AudioMySqlServer")["Password"]};database={Configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True"
|
||||
:
|
||||
$"server={_configuration.GetSection("AudioMySqlServer")["Server"]};uid={_configuration.GetSection("AudioMySqlServer")["SongsUsername"]};pwd={_configuration.GetSection("AudioMySqlServer")["SongsPassword"]};database={_configuration.GetSection("AudioMySqlServer")["SongsDatabase"]};charset=utf8;convert zero datetime=True";
|
||||
$"server={Configuration.GetSection("AudioMySqlServer")["Server"]};uid={Configuration.GetSection("AudioMySqlServer")["SongsUsername"]};pwd={Configuration.GetSection("AudioMySqlServer")["SongsPassword"]};database={Configuration.GetSection("AudioMySqlServer")["SongsDatabase"]};charset=utf8;convert zero datetime=True";
|
||||
|
||||
using (MySqlConnection connection = new MySqlConnection
|
||||
(
|
||||
@ -621,7 +621,7 @@ namespace RMuseum.Services.Implementation
|
||||
{
|
||||
List<GanjoorCommentAbuseReport> list = new List<GanjoorCommentAbuseReport>();
|
||||
string connectionString =
|
||||
$"server={_configuration.GetSection("AudioMySqlServer")["Server"]};uid={_configuration.GetSection("AudioMySqlServer")["ReportedCommentsUsername"]};pwd={_configuration.GetSection("AudioMySqlServer")["ReportedCommentsPassword"]};database={_configuration.GetSection("AudioMySqlServer")["ReportedCommentsDatabase"]};charset=utf8;convert zero datetime=True";
|
||||
$"server={Configuration.GetSection("AudioMySqlServer")["Server"]};uid={Configuration.GetSection("AudioMySqlServer")["ReportedCommentsUsername"]};pwd={Configuration.GetSection("AudioMySqlServer")["ReportedCommentsPassword"]};database={Configuration.GetSection("AudioMySqlServer")["ReportedCommentsDatabase"]};charset=utf8;convert zero datetime=True";
|
||||
|
||||
using (MySqlConnection connection = new MySqlConnection
|
||||
(
|
||||
@ -665,7 +665,7 @@ namespace RMuseum.Services.Implementation
|
||||
job = (await jobProgressServiceEF.UpdateJob(job.Id, 0, $"{jobName} - pre mysql data fetch")).Result;
|
||||
|
||||
string connectionString =
|
||||
$"server={_configuration.GetSection("AudioMySqlServer")["Server"]};uid={_configuration.GetSection("AudioMySqlServer")["Username"]};pwd={_configuration.GetSection("AudioMySqlServer")["Password"]};database={_configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True";
|
||||
$"server={Configuration.GetSection("AudioMySqlServer")["Server"]};uid={Configuration.GetSection("AudioMySqlServer")["Username"]};pwd={Configuration.GetSection("AudioMySqlServer")["Password"]};database={Configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True";
|
||||
|
||||
using (MySqlConnection connection = new MySqlConnection
|
||||
(
|
||||
@ -990,7 +990,7 @@ namespace RMuseum.Services.Implementation
|
||||
job = (await jobProgressServiceEF.UpdateJob(job.Id, 0, $"{jobName} - pre mysql data fetch")).Result;
|
||||
|
||||
string connectionString =
|
||||
$"server={_configuration.GetSection("AudioMySqlServer")["Server"]};uid={_configuration.GetSection("AudioMySqlServer")["Username"]};pwd={_configuration.GetSection("AudioMySqlServer")["Password"]};database={_configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True";
|
||||
$"server={Configuration.GetSection("AudioMySqlServer")["Server"]};uid={Configuration.GetSection("AudioMySqlServer")["Username"]};pwd={Configuration.GetSection("AudioMySqlServer")["Password"]};database={Configuration.GetSection("AudioMySqlServer")["Database"]};charset=utf8;convert zero datetime=True";
|
||||
|
||||
using (MySqlConnection connection = new MySqlConnection
|
||||
(
|
||||
@ -1037,7 +1037,7 @@ namespace RMuseum.Services.Implementation
|
||||
|
||||
//poet image
|
||||
|
||||
string imagePath = Path.Combine(_configuration.GetSection("AudioMySqlServer")["PoetImagesImportPath"], $"{poet.Id}.png");
|
||||
string imagePath = Path.Combine(Configuration.GetSection("AudioMySqlServer")["PoetImagesImportPath"], $"{poet.Id}.png");
|
||||
if (!File.Exists(imagePath))
|
||||
{
|
||||
job = (await jobProgressServiceEF.UpdateJob(job.Id, curPoet, $"{jobName} - {poet.Name} - {poet.Id}.png not found")).Result;
|
||||
@ -1045,7 +1045,7 @@ namespace RMuseum.Services.Implementation
|
||||
}
|
||||
|
||||
|
||||
ImageFileServiceEF imageFileService = new ImageFileServiceEF(context, _configuration);
|
||||
ImageFileServiceEF imageFileService = new ImageFileServiceEF(context, Configuration);
|
||||
|
||||
using(FileStream fs = File.OpenRead(imagePath))
|
||||
{
|
||||
|
||||
@ -46,9 +46,9 @@ namespace RMuseum.Services.Implementation
|
||||
|
||||
try
|
||||
{
|
||||
string outDir = _configuration.GetSection("Ganjoor")["GDBStorage"];
|
||||
string imgDir = _configuration.GetSection("Ganjoor")["GDBStorageImageSource"];
|
||||
string xmlFile = _configuration.GetSection("Ganjoor")["GDBListXMLFile"];
|
||||
string outDir = Configuration.GetSection("Ganjoor")["GDBStorage"];
|
||||
string imgDir = Configuration.GetSection("Ganjoor")["GDBStorageImageSource"];
|
||||
string xmlFile = Configuration.GetSection("Ganjoor")["GDBListXMLFile"];
|
||||
|
||||
var poets = await context.GanjoorPoets.AsNoTracking().ToListAsync();
|
||||
|
||||
@ -160,7 +160,7 @@ namespace RMuseum.Services.Implementation
|
||||
/// <returns></returns>
|
||||
public async Task<RServiceResult<string>> ExportToSqlite(int poetId)
|
||||
{
|
||||
return await _ExportToSqlite(_context, poetId, Path.Combine($"{_configuration.GetSection("PictureFileService")["StoragePath"]}", "SQLiteExports"));
|
||||
return await _ExportToSqlite(_context, poetId, Path.Combine($"{Configuration.GetSection("PictureFileService")["StoragePath"]}", "SQLiteExports"));
|
||||
}
|
||||
|
||||
private async Task<RServiceResult<string>> _ExportToSqlite(RMuseumDbContext context, int poetId, string dir, string fileName = null, bool ignoreBio = false)
|
||||
@ -247,7 +247,7 @@ namespace RMuseum.Services.Implementation
|
||||
{
|
||||
try
|
||||
{
|
||||
string dir = Path.Combine($"{_configuration.GetSection("PictureFileService")["StoragePath"]}", "SQLiteImports");
|
||||
string dir = Path.Combine($"{Configuration.GetSection("PictureFileService")["StoragePath"]}", "SQLiteImports");
|
||||
if (!Directory.Exists(dir))
|
||||
Directory.CreateDirectory(dir);
|
||||
|
||||
@ -259,7 +259,7 @@ namespace RMuseum.Services.Implementation
|
||||
await file.CopyToAsync(fsMain);
|
||||
}
|
||||
|
||||
string email = $"{_configuration.GetSection("Ganjoor")["SystemEmail"]}";
|
||||
string email = $"{Configuration.GetSection("Ganjoor")["SystemEmail"]}";
|
||||
var userId = (await _appUserService.FindUserByEmail(email)).Result.Id;
|
||||
|
||||
_backgroundTaskQueue.QueueBackgroundWorkItem
|
||||
@ -490,7 +490,7 @@ namespace RMuseum.Services.Implementation
|
||||
{
|
||||
try
|
||||
{
|
||||
string dir = Path.Combine($"{_configuration.GetSection("PictureFileService")["StoragePath"]}", "SQLiteImports");
|
||||
string dir = Path.Combine($"{Configuration.GetSection("PictureFileService")["StoragePath"]}", "SQLiteImports");
|
||||
if (!Directory.Exists(dir))
|
||||
Directory.CreateDirectory(dir);
|
||||
|
||||
|
||||
@ -58,7 +58,7 @@ namespace RMuseum.Services.Implementation
|
||||
var job = (await jobProgressServiceEF.NewJob("BuildSitemap", "Query data")).Result;
|
||||
try
|
||||
{
|
||||
string xmlSitemap = _configuration.GetSection("Ganjoor")["SitemapLocation"];
|
||||
string xmlSitemap = Configuration.GetSection("Ganjoor")["SitemapLocation"];
|
||||
if (File.Exists(xmlSitemap))
|
||||
File.Delete(xmlSitemap);
|
||||
|
||||
|
||||
@ -468,7 +468,7 @@ namespace RMuseum.Services.Implementation
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (page.FullUrl != "/hashieha" && page.FullUrl != "/vazn" && page.FullUrl != "/simi" && page.FullUrl != "/audioclip")
|
||||
if ( (AggressiveCacheEnabled || page.GanjoorPageType == GanjoorPageType.CatPage) && page.FullUrl != "/hashieha" && page.FullUrl != "/vazn" && page.FullUrl != "/simi" && page.FullUrl != "/audioclip")
|
||||
{
|
||||
_memoryCache.Set(cachKey, page);
|
||||
}
|
||||
@ -1431,7 +1431,10 @@ namespace RMuseum.Services.Implementation
|
||||
Comments = poemComments
|
||||
};
|
||||
|
||||
_memoryCache.Set(cachKey, poemViewModel);
|
||||
if (AggressiveCacheEnabled)
|
||||
{
|
||||
_memoryCache.Set(cachKey, poemViewModel);
|
||||
}
|
||||
}
|
||||
return new RServiceResult<GanjoorPoemCompleteViewModel>
|
||||
(
|
||||
@ -3607,6 +3610,24 @@ namespace RMuseum.Services.Implementation
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// aggressive cache
|
||||
/// </summary>
|
||||
public bool AggressiveCacheEnabled
|
||||
{
|
||||
get
|
||||
{
|
||||
try
|
||||
{
|
||||
return bool.Parse(Configuration["AggressiveCacheEnabled"]);
|
||||
}
|
||||
catch
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Database Context
|
||||
/// </summary>
|
||||
@ -3615,7 +3636,7 @@ namespace RMuseum.Services.Implementation
|
||||
/// <summary>
|
||||
/// Configuration
|
||||
/// </summary>
|
||||
protected IConfiguration _configuration { get; }
|
||||
protected IConfiguration Configuration { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Background Task Queue Instance
|
||||
@ -3667,7 +3688,7 @@ namespace RMuseum.Services.Implementation
|
||||
_notificationService = notificationService;
|
||||
_imageFileService = imageFileService;
|
||||
_memoryCache = memoryCache;
|
||||
_configuration = configuration;
|
||||
Configuration = configuration;
|
||||
_httpClient = httpClient;
|
||||
}
|
||||
}
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=museum;Trusted_Connection=True;MultipleActiveResultSets=true"
|
||||
},
|
||||
"DatabaseMigrate": "False",
|
||||
"AggressiveCacheEnabled": "False",
|
||||
"PictureFileService": {
|
||||
"StoragePath": "C:\\museum",
|
||||
"ResizedImageContentType": "image/jpeg",
|
||||
|
||||
Loading…
Reference in New Issue
Block a user