init
This commit is contained in:
@@ -0,0 +1,149 @@
|
||||
using System;
|
||||
using Kreta.Core;
|
||||
using Kreta.Framework;
|
||||
|
||||
namespace Kreta.DataAccessManual.Util
|
||||
{
|
||||
internal class Connection : ConnectionBase
|
||||
{
|
||||
public Connection(string sessionId) : base(sessionId)
|
||||
{
|
||||
activatedByMe = ActivateSession();
|
||||
}
|
||||
|
||||
protected override bool ActivateSession()
|
||||
{
|
||||
return DataUtil.ActivateSession(this.SessionId);
|
||||
}
|
||||
|
||||
protected override void DeactivateSession()
|
||||
{
|
||||
DataUtil.DeactivateSession(SessionId);
|
||||
}
|
||||
}
|
||||
|
||||
internal class OrganizationConnection : ConnectionBase
|
||||
{
|
||||
private readonly string intezmenyAzonosito;
|
||||
|
||||
public OrganizationConnection(string intezmenyAzonosito) : base(string.Empty)
|
||||
{
|
||||
this.intezmenyAzonosito = intezmenyAzonosito;
|
||||
activatedByMe = ActivateSession();
|
||||
}
|
||||
|
||||
protected override bool ActivateSession()
|
||||
{
|
||||
return DataUtil.ActivateOrganizationSystemSession(intezmenyAzonosito);
|
||||
}
|
||||
|
||||
protected override void DeactivateSession()
|
||||
{
|
||||
DataUtil.DeactivateOrganizationSystemSession();
|
||||
}
|
||||
}
|
||||
|
||||
internal class MobileConnection : ConnectionBase
|
||||
{
|
||||
private readonly string intezmenyAzonosito;
|
||||
|
||||
public MobileConnection(string intezmenyAzonosito, int? tanevId, int? felhasznaloId) : base(string.Empty)
|
||||
{
|
||||
this.intezmenyAzonosito = intezmenyAzonosito;
|
||||
activatedByMe = ActivateSession();
|
||||
|
||||
if (tanevId.IsEntityId())
|
||||
{
|
||||
UserContext.Instance.SetTanev(tanevId.Value, tanevId.Value);
|
||||
}
|
||||
if (felhasznaloId.IsEntityId())
|
||||
{
|
||||
UserContext.Instance.SetFelhasznaloId(felhasznaloId.Value);
|
||||
}
|
||||
}
|
||||
|
||||
protected override bool ActivateSession()
|
||||
{
|
||||
return DataUtil.ActivateMobileSession(intezmenyAzonosito);
|
||||
}
|
||||
|
||||
protected override void DeactivateSession()
|
||||
{
|
||||
DataUtil.DeactivateMobileSession();
|
||||
}
|
||||
}
|
||||
|
||||
internal class SystemConnection : ConnectionBase
|
||||
{
|
||||
public SystemConnection() : base(string.Empty)
|
||||
{
|
||||
activatedByMe = ActivateSession();
|
||||
}
|
||||
|
||||
protected override bool ActivateSession()
|
||||
{
|
||||
return DataUtil.ActivateSystemSession();
|
||||
}
|
||||
|
||||
protected override void DeactivateSession()
|
||||
{
|
||||
DataUtil.DeactivateSystemSession();
|
||||
}
|
||||
}
|
||||
|
||||
internal class ServiceSystemConnection : ConnectionBase
|
||||
{
|
||||
private readonly string connectionString;
|
||||
|
||||
public ServiceSystemConnection(string connectionString) : base(string.Empty)
|
||||
{
|
||||
this.connectionString = connectionString;
|
||||
activatedByMe = ActivateSession();
|
||||
}
|
||||
|
||||
protected override bool ActivateSession()
|
||||
{
|
||||
return DataUtil.ActivateServiceSystemSession(connectionString);
|
||||
}
|
||||
|
||||
protected override void DeactivateSession()
|
||||
{
|
||||
DataUtil.DeactivateServiceSystemSession();
|
||||
}
|
||||
}
|
||||
|
||||
internal abstract class ConnectionBase : IDisposable
|
||||
{
|
||||
/*TODO: ezek törölhetőek lesznek ha majd kikopik a helperes Session aktiváció*/
|
||||
protected bool activatedByMe = false;
|
||||
|
||||
protected readonly string SessionId;
|
||||
|
||||
internal ConnectionBase(string sessionId)
|
||||
{
|
||||
this.SessionId = sessionId;
|
||||
}
|
||||
|
||||
protected virtual bool ActivateSession()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
protected virtual void DeactivateSession()
|
||||
{
|
||||
}
|
||||
|
||||
~ConnectionBase()
|
||||
{
|
||||
Dispose();
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
if (activatedByMe)
|
||||
{
|
||||
DeactivateSession();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user