64 lines
1.4 KiB
C#
64 lines
1.4 KiB
C#
using BestHTTP.Core;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
namespace BestHTTP.Examples.Helpers.Components
|
|
{
|
|
public class Cookies : MonoBehaviour
|
|
{
|
|
#pragma warning disable 0649, 0169
|
|
[SerializeField]
|
|
private Text _count;
|
|
|
|
[SerializeField]
|
|
private Text _size;
|
|
|
|
[SerializeField]
|
|
private Button _clear;
|
|
#pragma warning restore
|
|
|
|
private void Start()
|
|
{
|
|
PluginEventHelper.OnEvent += OnPluginEvent;
|
|
UpdateLabels();
|
|
}
|
|
|
|
private void OnDestroy()
|
|
{
|
|
PluginEventHelper.OnEvent -= OnPluginEvent;
|
|
}
|
|
|
|
private void OnPluginEvent(PluginEventInfo @event)
|
|
{
|
|
#if !BESTHTTP_DISABLE_COOKIES
|
|
if (@event.Event == PluginEvents.SaveCookieLibrary)
|
|
UpdateLabels();
|
|
#endif
|
|
}
|
|
|
|
private void UpdateLabels()
|
|
{
|
|
#if !BESTHTTP_DISABLE_COOKIES
|
|
var cookies = BestHTTP.Cookies.CookieJar.GetAll();
|
|
var size = cookies.Sum(c => c.GuessSize());
|
|
|
|
this._count.text = cookies.Count.ToString("N0");
|
|
this._size.text = size.ToString("N0");
|
|
#else
|
|
this._count.text = "0";
|
|
this._size.text = "0";
|
|
#endif
|
|
}
|
|
|
|
public void OnClearButtonClicked()
|
|
{
|
|
#if !BESTHTTP_DISABLE_COOKIES
|
|
BestHTTP.Cookies.CookieJar.Clear();
|
|
#endif
|
|
}
|
|
}
|
|
}
|