public SetContextDataRequest(RDataContext <TContextData> context, TContextData data, long?timeSet = null) : this()
 {
     Params = new Parameters()
     {
         Id      = context.Id,
         Data    = data,
         TimeSet = timeSet.HasValue ? timeSet.Value : Tools.Time.UnixTimeMilliseconds
     };
 }
        public void SetContextData <TContextData>(RDataContext <TContextData> context, TContextData data, bool immediately = false)
            where TContextData : class, new()
        {
            if (!CheckAuthorized("set data for context " + context.Name))
            {
                return;
            }

            var request = new Requests.Contexts.SetContextDataRequest <TContextData>(context, data, Tools.Time.UnixTimeMilliseconds);

            CoroutineManager.StartCoroutine(Send <Requests.Contexts.SetContextDataRequest <TContextData>, BooleanResponse>(request, immediately));
        }
        private void StartRootContext <TContextData>(RDataContext <TContextData> context, bool immediately = false)
            where TContextData : class, new()
        {
            if (!CheckAuthorized("start root context " + context.Name))
            {
                return;
            }

            var request = new Requests.Contexts.StartContextRequest <TContextData>(context);

            CoroutineManager.StartCoroutine(Send <Requests.Contexts.StartContextRequest <TContextData>, BooleanResponse>(request, immediately));
        }
예제 #4
0
 public StartContextRequest(RDataContext <TContextData> context) : base()
 {
     Params = new Parameters()
     {
         Id                 = context.Id,
         Name               = context.Name,
         ParentContextId    = context.ParentContextId,
         Data               = context.Data,
         TimeStarted        = Tools.Time.DateTimeToUnixTimeMilliseconds(context.TimeStarted),
         ContextDataVersion = context.ContextDataVersion
     };
 }
        public void StartContext <TContextData>(RDataContext <TContextData> context, RDataBaseContext parentContext = null, bool immediately = false)
            where TContextData : class, new()
        {
            if (!CheckAuthorized("start context " + context.Name))
            {
                return;
            }

            if (parentContext == null)
            {
                parentContext = _authorizationContext;
            }

            parentContext.AddChild(context);

            var request = new Requests.Contexts.StartContextRequest <TContextData>(context);

            CoroutineManager.StartCoroutine(Send <Requests.Contexts.StartContextRequest <TContextData>, BooleanResponse>(request, immediately));
        }