IConnectorInsightsDataProcess.csβ’1.98 kB
ο»Ώusing Api.DigitalPages.Interfaces.Models;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace Api.DigitalPages.Interfaces.Connector
{
public interface IConnectorInsightsDataProcess
{
Task<bool> AcceptFormat(string json, IConnectorInsightsContext context);
Task<IConnectorInsightsContext> Prepare(string json, IConnectorInsightsContext context);
Task<bool> ProcessData(IConnectorInsightsContext context);
}
public interface IConnectorInsightsDataProcessV2
{
Task<bool> AcceptFormat(string json, IConnectorInsightsContext context);
Task<IConnectorInsightsContext> Prepare(string json, IConnectorInsightsContext context);
Task<bool> ProcessData(IConnectorInsightsContext context);
}
public interface IConnectorInsightsContext : IConnectorInsightsContext<IDirectory, IProject, IUser, IConnector>
{
}
public interface IConnectorInsightsContext<TDirectory, TProject, TUser, TConnector>
where TConnector : IConnector
where TDirectory : IDirectory
where TProject : IProject
where TUser : IUser
{
public string ClientIp { get; set; }
public string ProjectKey { get; set; }
public string ApiEnv { get; set; }
public string ClientJwt { get; set; }
public TConnector Connector { get; set; }
public TDirectory Directory { get; set; }
public TProject Project { get; set; }
public TUser User { get; set; }
public List<IEntityItem> Entities { get; set; }
Dictionary<string, object> OriginalHeaders { get; set; }
Dictionary<string, object> OriginalParameters { get; set; }
public object InternalData { get; set; }
InsightsDataFormatType FormatType { get; set; }
}
public enum InsightsDataFormatType
{
AppInsights,
GoogleAnalytics,
GenericJson,
GenericXml,
XApi
}
}