Improve importer
This commit is contained in:
parent
55223c3bb7
commit
94edb41973
@ -9,11 +9,13 @@ namespace NostrServices.Controllers;
|
||||
[Route("/api/v1/import")]
|
||||
public class ImportController : Controller
|
||||
{
|
||||
private readonly ILogger<ImportController> _logger;
|
||||
private readonly RedisStore _redisStore;
|
||||
|
||||
public ImportController(RedisStore redisStore)
|
||||
public ImportController(RedisStore redisStore, ILogger<ImportController> logger)
|
||||
{
|
||||
_redisStore = redisStore;
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -29,10 +31,24 @@ public class ImportController : Controller
|
||||
|
||||
while (await sr.ReadLineAsync(cts) is { } line)
|
||||
{
|
||||
var ev = JsonConvert.DeserializeObject<NostrEvent>(line, NostrSerializer.Settings);
|
||||
if (ev != default)
|
||||
try
|
||||
{
|
||||
await _redisStore.StoreEvent(CompactEvent.FromNostrEvent(ev));
|
||||
var ev = JsonConvert.DeserializeObject<NostrEvent>(line, NostrSerializer.Settings);
|
||||
if (ev != default && ev.IsSignatureValid())
|
||||
{
|
||||
if (ev.Kind is NostrKind.Metadata)
|
||||
{
|
||||
await _redisStore.StoreProfile(CompactProfile.FromNostrEvent(ev)!);
|
||||
}
|
||||
else
|
||||
{
|
||||
await _redisStore.StoreEvent(CompactEvent.FromNostrEvent(ev));
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logger.LogWarning("Failed to import {json} {msg}", line, ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user