Initial commit

This commit is contained in:
rudder
2026-08-12 14:03:44 +03:00
commit 9a7b4a57dc
304 changed files with 82311 additions and 0 deletions
@@ -0,0 +1,30 @@
using RudderSdk.Core;
namespace RudderSdk.Unity
{
public static class RudderUnityClientFactory
{
public static RudderClient Create(RudderUnityClientOptions options)
{
var executor = options.RequestExecutor ?? new UnityWebRequestExecutor(options.TimeoutSeconds);
var clientOptions = new RudderClientOptions
{
BaseUrl = options.BaseUrl,
RealtimeUrl = options.RealtimeUrl,
ProjectKey = options.ProjectKey,
Logger = new UnityLoggerAdapter(options.LoggerSink ?? new UnityDebugLoggerSink()),
Transport = new UnityTransportAdapter(options.BaseUrl, executor),
UploadTransport = new UnityUploadTransport(options.TimeoutSeconds),
TokenStore = new UnityTokenStoreAdapter(options.KeyValueStore),
DeviceIdProvider = new UnityDeviceIdProvider(),
Clock = new UnityClock(),
PlanStateStore = new UnityPlanStateStore(options.KeyValueStore),
Scheduler = new UnityPlanScheduler(),
RealtimeTransportFactory = new UnityRealtimeTransportFactory()
};
return new RudderClient(clientOptions);
}
}
}