public static Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Update DeserializeUpdate(global::Improbable.Worker.Core.SchemaComponentUpdate updateObj) { var update = new Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Update(); var obj = updateObj.GetFields(); return(update); }
public override void OnAddComponent(AddComponentOp op) { var entity = TryGetEntityFromEntityId(new EntityId(op.EntityId)); Profiler.BeginSample("Connection"); var data = Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Serialization.Deserialize(op.Data.SchemaData.Value.GetFields(), World); data.MarkDataClean(); entityManager.AddComponentData(entity, data); entityManager.AddComponent(entity, ComponentType.Create <NotAuthoritative <Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Component> >()); var update = new Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Update { Value = data.Value, }; var updates = new List <Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Update> { update }; var updatesComponent = new Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.ReceivedUpdates { handle = ReferenceTypeProviders.UpdatesProvider.Allocate(World) }; ReferenceTypeProviders.UpdatesProvider.Set(updatesComponent.handle, updates); entityManager.AddComponentData(entity, updatesComponent); if (entityManager.HasComponent <ComponentRemoved <Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Component> >(entity)) { entityManager.RemoveComponent <ComponentRemoved <Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Component> >(entity); } else if (!entityManager.HasComponent <ComponentAdded <Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Component> >(entity)) { entityManager.AddComponent(entity, ComponentType.Create <ComponentAdded <Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection.Component> >()); } else { LogDispatcher.HandleLog(LogType.Error, new LogEvent(ReceivedDuplicateComponentAdded) .WithField(LoggingUtils.LoggerName, LoggerName) .WithField(LoggingUtils.EntityId, op.EntityId) .WithField("Component", "Improbable.Gdk.Tests.AlternateSchemaSyntax.Connection") ); } Profiler.EndSample(); }