Files
ZuneUIXTools/libs/UIX.Asm/Assembler.cs
T

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;
}
}