69 lines
2.1 KiB
C#
69 lines
2.1 KiB
C#
using skyscraper5.Data.PostgreSql;
|
|
using skyscraper5.Skyscraper.Scraper.Storage.InMemory;
|
|
using skyscraper8.EPGCollectorPort.SkyscraperSide.MediaHighway2;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace skyscraper8.EPGCollectorPort.SkyscraperSide.OpenTV
|
|
{
|
|
internal interface IOpenTvDataStorage
|
|
{
|
|
bool TestForTitles(int skyscraperContextCurrentNetworkId, int skyscraperContextCurrentTransportStreamId, int titleDataEventId, DateTime titleDataStartTime);
|
|
}
|
|
|
|
internal class OpenTvDataStorageImpl : IOpenTvDataStorage
|
|
{
|
|
private IOpenTvDataStorage _storageEngine;
|
|
|
|
public OpenTvDataStorageImpl(object[] getPluginConnector)
|
|
{
|
|
object o = getPluginConnector[0];
|
|
switch (o)
|
|
{
|
|
case InMemoryPluginToken t1:
|
|
_storageEngine = new OpenTvDataStorageMemory();
|
|
break;
|
|
case PostgresqlToken t2:
|
|
_storageEngine = new OpenTvDataStoragePostgresql(t2);
|
|
break;
|
|
default:
|
|
throw new NotImplementedException(o.GetType().FullName);
|
|
}
|
|
}
|
|
|
|
public bool TestForTitles(int skyscraperContextCurrentNetworkId, int skyscraperContextCurrentTransportStreamId,
|
|
int titleDataEventId, DateTime titleDataStartTime)
|
|
{
|
|
return _storageEngine.TestForTitles(skyscraperContextCurrentNetworkId, skyscraperContextCurrentTransportStreamId, titleDataEventId, titleDataStartTime);
|
|
}
|
|
}
|
|
|
|
internal class OpenTvDataStorageMemory : IOpenTvDataStorage
|
|
{
|
|
public bool TestForTitles(int skyscraperContextCurrentNetworkId, int skyscraperContextCurrentTransportStreamId,
|
|
int titleDataEventId, DateTime titleDataStartTime)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
|
|
internal class OpenTvDataStoragePostgresql : IOpenTvDataStorage
|
|
{
|
|
private readonly PostgresqlToken _postgresql;
|
|
|
|
public OpenTvDataStoragePostgresql(PostgresqlToken postgresql)
|
|
{
|
|
_postgresql = postgresql;
|
|
}
|
|
|
|
public bool TestForTitles(int skyscraperContextCurrentNetworkId, int skyscraperContextCurrentTransportStreamId,
|
|
int titleDataEventId, DateTime titleDataStartTime)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
}
|