예제 #1
0
 public static void Start()
 {
     var serializer = new JavaScriptSerializerAdapter(new JavaScriptSerializer {
         MaxJsonLength = 30 * 1024 * 1024
     });
     DependencyResolver.Register(typeof(IPeerUrlSource), () => new ConfigPeerUrlSource());
     DependencyResolver.Register(typeof(IJsonSerializer), () => serializer);
     DynamicModuleUtility.RegisterModule(typeof(SignalReceiverModule));
     DynamicModuleUtility.RegisterModule(typeof(MessageReceiverModule));
 }
            internal DefaultDependencyResolver()
            {
                var store = new Lazy <InProcessMessageStore>(() => new InProcessMessageStore());

                Register(typeof(IMessageStore), () => store.Value);

                var serialzier = new JavaScriptSerializerAdapter(new JavaScriptSerializer
                {
                    MaxJsonLength = 30 * 1024 * 1024
                });

                Register(typeof(IJsonStringifier), () => serialzier);

                Register(typeof(IActionResolver), () => new DefaultActionResolver());
                Register(typeof(IHubActivator), () => new DefaultHubActivator());
                Register(typeof(IHubFactory), () => new DefaultHubFactory());

                var hubLocator = new DefaultHubLocator();

                Register(typeof(IHubLocator), () => hubLocator);

                var signalBus = new InProcessSignalBus();

                Register(typeof(ISignalBus), () => signalBus);

                var pesistentConnectionFactory = new DefaultPersistentConnectionFactory();

                Register(typeof(IPersistentConnectionFactory), () => pesistentConnectionFactory);

                var minifier = new NullJavaScriptMinifier();

                var proxyGenerator = new DefaultJavaScriptProxyGenerator(hubLocator, (IJavaScriptMinifier)GetService(typeof(IJavaScriptMinifier)) ?? minifier);

                Register(typeof(IJavaScriptProxyGenerator), () => proxyGenerator);

                var clientIdFactory = new GuidClientIdFactory();

                Register(typeof(IClientIdFactory), () => clientIdFactory);
            }