mirror of
https://github.com/ZuneDev/ZuneUIXTools.git
synced 2026-07-27 13:11:59 -07:00
38 lines
930 B
C#
38 lines
930 B
C#
using Microsoft.Iris.Data;
|
|
using Microsoft.Iris.Markup;
|
|
using Microsoft.Iris.Session;
|
|
|
|
namespace Microsoft.Iris.Asm;
|
|
|
|
public static class Assembler
|
|
{
|
|
public static void RegisterLoader()
|
|
{
|
|
MarkupSystem.RegisterFactoryByExtension(".uixa", Load);
|
|
}
|
|
|
|
public static LoadResult Load(string uri)
|
|
{
|
|
Resource resource = ResourceManager.AcquireResource(uri);
|
|
if (resource == null)
|
|
return null;
|
|
|
|
ErrorManager.EnterContext(resource.Uri);
|
|
LoadResult loadResult = LoadResultCache.Read(resource.Uri);
|
|
if (loadResult != null)
|
|
{
|
|
LoadResultCache.Write(uri, loadResult);
|
|
}
|
|
else
|
|
{
|
|
loadResult = new AsmMarkupLoadResult(resource, uri);
|
|
if (loadResult != null)
|
|
resource = null;
|
|
}
|
|
|
|
resource?.Free();
|
|
ErrorManager.ExitContext();
|
|
return loadResult;
|
|
}
|
|
}
|