private Deploy DeployFromProto(Proto.Msg.DeployData protoDeploy) { Config config; if (protoDeploy.ConfigSerializerId > 0) // TODO: should be protoDeploy.Config != null. But it always not null { config = system.Serialization.Deserialize( protoDeploy.Config.ToByteArray(), protoDeploy.ConfigSerializerId, protoDeploy.ConfigManifest).AsInstanceOf <Config>(); } else { config = Config.Empty; } RouterConfig routerConfig; if (protoDeploy.RouterConfigSerializerId > 0) // TODO: should be protoDeploy.RouterConfig != null. But it always not null { routerConfig = system.Serialization.Deserialize( protoDeploy.RouterConfig.ToByteArray(), protoDeploy.RouterConfigSerializerId, protoDeploy.RouterConfigManifest).AsInstanceOf <RouterConfig>(); } else { routerConfig = NoRouter.Instance; } Scope scope; if (protoDeploy.ScopeSerializerId > 0) // TODO: should be protoDeploy.Scope != null. But it always not null { scope = system.Serialization.Deserialize( protoDeploy.Scope.ToByteArray(), protoDeploy.ScopeSerializerId, protoDeploy.ScopeManifest).AsInstanceOf <Scope>(); } else { scope = Deploy.NoScopeGiven; } var dispatcher = !string.IsNullOrEmpty(protoDeploy.Dispatcher) ? protoDeploy.Dispatcher : Deploy.NoDispatcherGiven; return(new Deploy(protoDeploy.Path, config, routerConfig, scope, dispatcher)); }
// // Deploy // private Proto.Msg.DeployData DeployToProto(Deploy deploy) { var deployBuilder = new Proto.Msg.DeployData(); deployBuilder.Path = deploy.Path; { var tuple = Serialize(deploy.Config); deployBuilder.ConfigSerializerId = tuple.Item1; deployBuilder.ConfigManifest = tuple.Item3; deployBuilder.Config = ByteString.CopyFrom(tuple.Item4); } if (deploy.RouterConfig != NoRouter.Instance) { var tuple = Serialize(deploy.RouterConfig); deployBuilder.RouterConfigSerializerId = tuple.Item1; deployBuilder.RouterConfigManifest = tuple.Item3; deployBuilder.RouterConfig = ByteString.CopyFrom(tuple.Item4); } if (deploy.Scope != Deploy.NoScopeGiven) { var tuple = Serialize(deploy.Scope); deployBuilder.ScopeSerializerId = tuple.Item1; deployBuilder.ScopeManifest = tuple.Item3; deployBuilder.Scope = ByteString.CopyFrom(tuple.Item4); } if (deploy.Dispatcher != Deploy.NoDispatcherGiven) { deployBuilder.Dispatcher = deploy.Dispatcher; } return(deployBuilder); }