private static void ApplicationInit() { _globalLock = new object(); // Add an instance of the ResourceContainer to PreloadedPackages so that PackWebRequestFactory can find it // and mark it as thread-safe so PackWebResponse won't protect returned streams with a synchronizing wrapper PreloadedPackages.AddPackage(PackUriHelper.GetPackageUri(BaseUriHelper.PackAppBaseUri), new ResourceContainer(), true); MimeObjectFactory.Register(MimeTypeMapper.BamlMime, new StreamToObjectFactoryDelegate(AppModelKnownContentFactory.BamlConverter)); StreamToObjectFactoryDelegate xamlFactoryDelegate = new StreamToObjectFactoryDelegate(AppModelKnownContentFactory.XamlConverter); MimeObjectFactory.Register(MimeTypeMapper.XamlMime, xamlFactoryDelegate); MimeObjectFactory.Register(MimeTypeMapper.FixedDocumentMime, xamlFactoryDelegate); MimeObjectFactory.Register(MimeTypeMapper.FixedDocumentSequenceMime, xamlFactoryDelegate); MimeObjectFactory.Register(MimeTypeMapper.FixedPageMime, xamlFactoryDelegate); MimeObjectFactory.Register(MimeTypeMapper.ResourceDictionaryMime, xamlFactoryDelegate); StreamToObjectFactoryDelegate htmlxappFactoryDelegate = new StreamToObjectFactoryDelegate(AppModelKnownContentFactory.HtmlXappConverter); MimeObjectFactory.Register(MimeTypeMapper.HtmMime, htmlxappFactoryDelegate); MimeObjectFactory.Register(MimeTypeMapper.HtmlMime, htmlxappFactoryDelegate); MimeObjectFactory.Register(MimeTypeMapper.XbapMime, htmlxappFactoryDelegate); }
// The delegate registered here will be responsible for closing the stream passed to it. internal static void Register(ContentType contentType, StreamToObjectFactoryDelegate method) { _objectConverters[contentType] = method; }