Exemplo n.º 1
0
        public static TrackablePocoTracker <IUserData> Convert(TrackableUserDataTrackerSurrogate surrogate)
        {
            if (surrogate == null)
            {
                return(null);
            }

            var tracker = new TrackablePocoTracker <IUserData>();

            if (surrogate.Name != null)
            {
                tracker.ChangeMap.Add(TrackableUserData.PropertyTable.Name, new TrackablePocoTracker <IUserData> .Change {
                    NewValue = surrogate.Name.Value
                });
            }
            if (surrogate.Gold != null)
            {
                tracker.ChangeMap.Add(TrackableUserData.PropertyTable.Gold, new TrackablePocoTracker <IUserData> .Change {
                    NewValue = surrogate.Gold.Value
                });
            }
            if (surrogate.Level != null)
            {
                tracker.ChangeMap.Add(TrackableUserData.PropertyTable.Level, new TrackablePocoTracker <IUserData> .Change {
                    NewValue = surrogate.Level.Value
                });
            }
            return(tracker);
        }
Exemplo n.º 2
0
        public static TrackableUserDataTrackerSurrogate Convert(TrackablePocoTracker <IUserData> tracker)
        {
            if (tracker == null)
            {
                return(null);
            }

            var surrogate = new TrackableUserDataTrackerSurrogate();

            foreach (var changeItem in tracker.ChangeMap)
            {
                switch (changeItem.Key.Name)
                {
                case "Name":
                    surrogate.Name = new EnvelopedObject <string> {
                        Value = (string)changeItem.Value.NewValue
                    };
                    break;

                case "Gold":
                    surrogate.Gold = new EnvelopedObject <int> {
                        Value = (int)changeItem.Value.NewValue
                    };
                    break;

                case "Level":
                    surrogate.Level = new EnvelopedObject <int> {
                        Value = (int)changeItem.Value.NewValue
                    };
                    break;
                }
            }

            return(surrogate);
        }
        public static TrackablePocoTracker<IUserData> Convert(TrackableUserDataTrackerSurrogate surrogate)
        {
            if (surrogate == null)
                return null;

            var tracker = new TrackablePocoTracker<IUserData>();
            if (surrogate.Name != null)
                tracker.ChangeMap.Add(TrackableUserData.PropertyTable.Name, new TrackablePocoTracker<IUserData>.Change { NewValue = surrogate.Name.Value });
            if (surrogate.Gold != null)
                tracker.ChangeMap.Add(TrackableUserData.PropertyTable.Gold, new TrackablePocoTracker<IUserData>.Change { NewValue = surrogate.Gold.Value });
            if (surrogate.Level != null)
                tracker.ChangeMap.Add(TrackableUserData.PropertyTable.Level, new TrackablePocoTracker<IUserData>.Change { NewValue = surrogate.Level.Value });
            return tracker;
        }
        public static TrackableUserDataTrackerSurrogate Convert(TrackablePocoTracker<IUserData> tracker)
        {
            if (tracker == null)
                return null;

            var surrogate = new TrackableUserDataTrackerSurrogate();
            foreach(var changeItem in tracker.ChangeMap)
            {
                switch (changeItem.Key.Name)
                {
                    case "Name":
                        surrogate.Name = new EnvelopedObject<string> { Value = (string)changeItem.Value.NewValue };
                        break;
                    case "Gold":
                        surrogate.Gold = new EnvelopedObject<int> { Value = (int)changeItem.Value.NewValue };
                        break;
                    case "Level":
                        surrogate.Level = new EnvelopedObject<int> { Value = (int)changeItem.Value.NewValue };
                        break;
                }
            }

            return surrogate;
        }