Exemple #1
0
        private static CreationFixture CreateWithParams(ConstructionNode node, Func <IObjectBuilder, ConstructionNode, BuildContext, object> createFunc)
        {
            var constructionContext = new ObjectBuilderContext(
                new SourceValueConverter(),
                new AttributeBasedMetadataProvider());

            var prefixAnnotator = new PrefixAnnotator();


            var executingAssembly = new[] { Assembly.GetExecutingAssembly() };

            var attributeBasedTypeDirectory = new AttributeBasedTypeDirectory(executingAssembly);
            var builder =
                new ExtendedObjectBuilder(
                    new InstanceCreator(constructionContext.SourceValueConverter, constructionContext, attributeBasedTypeDirectory),
                    constructionContext,
                    new ContextFactory(attributeBasedTypeDirectory, constructionContext));


            var newTypeDirectory = GetTypeDirectory();

            var creationContext = new BuildContext(
                new NamescopeAnnotator(constructionContext.MetadataProvider),
                new AmbientRegistrator(),
                new InstanceLifecycleSignaler())
            {
                PrefixAnnotator = prefixAnnotator, PrefixedTypeResolver = new PrefixedTypeResolver(prefixAnnotator, newTypeDirectory)
            };

            return(new CreationFixture
            {
                Result = createFunc(builder, node, creationContext),
                BuildContext = creationContext
            });
        }
Exemple #2
0
        public TypeLocator(IList <Assembly> assemblies)
        {
            inner = new AttributeBasedTypeDirectory(assemblies);
            var nuiAssem = Assembly.Load("Tizen.NUI");

            nuiTypeDirectory = new TypeDirectory(GetNamespaces(new List <Assembly> {
                nuiAssem
            }));
        }
Exemple #3
0
        private static List <MemberAssignment> Parse(string xaml, Func <XElement, IPrefixAnnotator, ConstructionNode> parser, Type type)
        {
            var typeDirectory = new AttributeBasedTypeDirectory(new List <Assembly>()
            {
                Assembly.GetExecutingAssembly()
            });
            var sut = new AssignmentExtractor(new AttributeBasedMetadataProvider(), new InlineParser[0], new Resolver(typeDirectory), parser);

            var assigments = sut.GetAssignments(type, XElement.Parse(xaml), new PrefixAnnotator()).ToList();

            return(assigments);
        }
Exemple #4
0
        public TypeLocator(IList <Assembly> assemblies)
        {
            inner = new AttributeBasedTypeDirectory(assemblies);
            var nuiAssem        = Assembly.Load("Tizen.NUI");
            var systemXamlAssem = Assembly.GetAssembly(typeof(System.Xaml.XamlReader));
            var ns = GetNamespacesNUI(new List <Assembly> {
                nuiAssem
            });

            ns.Concat <XamlNamespace>(GetNamespacesWPF(new List <Assembly> {
                systemXamlAssem
            }));
            nuiTypeDirectory = new TypeDirectory(ns);
        }