コード例 #1
0
        public static Task <ContentData> ExecuteChangeScriptAsync(this ContentOperation operation, Status status, StatusChange change)
        {
            var script = operation.SchemaDef.Scripts.Change;

            if (string.IsNullOrWhiteSpace(script))
            {
                return(Task.FromResult(operation.Snapshot.Data));
            }

            // Clone the data so we do not change it by accident.
            var data = operation.Snapshot.Data.Clone();

            var vars = Enrich(operation, new ScriptVars
            {
                [ScriptKeys.Data]      = data,
                [ScriptKeys.DataOld]   = null,
                [ScriptKeys.OldData]   = null,
                [ScriptKeys.OldStatus] = operation.Snapshot.EditingStatus(),
                [ScriptKeys.Operation] = change.ToString(),
                [ScriptKeys.Status]    = status,
                [ScriptKeys.StatusOld] = operation.Snapshot.EditingStatus()
            });

            return(TransformAsync(operation, script, vars));
        }
コード例 #2
0
ファイル: NetworkListener.cs プロジェクト: TagsRocks/GladNet
    public void OnStatusChange(StatusChange status)
    {
        Debug.Log(status.ToString());

        switch (status)
        {
        case StatusChange.Connected:
            peer.SendRequest(new MessagePacket("Hello, this is a message.", "GladNetUser"), 5, Packet.DeliveryMethod.ReliableUnordered);
            break;
        }
    }