Example #1
0
        public void ContainsResourceTest()
        {
            Uri uri = new Uri("http://example.com/testResource");

            IModelGroup group = Store.CreateModelGroup(Model.Uri, Model2.Uri);

            Assert.IsFalse(group.ContainsResource(uri));

            IResource resource = Model.CreateResource(uri);

            resource.AddProperty(rdf.type, nco.Contact);
            resource.Commit();

            Assert.IsTrue(group.ContainsResource(uri));

            Model.DeleteResource(resource);

            Assert.IsFalse(group.ContainsResource(uri));

            resource = Model2.CreateResource(uri);
            resource.AddProperty(rdf.type, nco.Contact);
            resource.Commit();

            Assert.IsTrue(group.ContainsResource(uri));
        }
        public ModelGroupAdapter(ModelInspectorWindowModel owner, IModelGroup group)
        {
            this.owner = owner;
            this.Group = group;


            this.DragDropHandler = DragDropTarget.GetFactory()
                                   .AddTypeHandler <ModelNodeBaseAdapter>(
                DragDropEffects.Copy,
                DragDropEffect.Copy,
                (value, effect, info) =>
            {
                int NewIndex = info.GetInfoOrDefault <DropIndex>(this.Group.Models.Count);
                this.Group.Models.Insert(NewIndex, new ModelInfo(value.Model.Value, value.Name, false));
            }
                ).AddTypeHandler <ModelInfoAdapter>(
                DragDropEffects.Move | DragDropEffects.Copy,
                DragDropEffect.Move,
                (value, effect, info) =>
            {
                int NewIndex = info.GetInfoOrDefault <DropIndex>(this.Group.Models.Count);
                this.Group.Models.Insert(NewIndex, new ModelInfo(value.Model.Root.Value, value.Model.Name, effect == DragDropEffect.Move ? value.Model.NonClosable : false));
            }
                ).Create();

            this.closeGroupCommand = new DelegateCommand(this.CloseGroup, () => group.Models.All(model => model.NonClosable == false));
        }
Example #3
0
        public void GetResourceTest()
        {
            Uri resourceUri = new Uri("http://example.com/testResource");

            IModelGroup g = Store.CreateModelGroup(Model.Uri, Model2.Uri);

            Assert.Throws <ResourceNotFoundException>(new TestDelegate(() => g.GetResource(resourceUri)));

            IResource resource = Model.CreateResource(resourceUri);

            resource.AddProperty(rdf.type, nco.Contact);
            resource.Commit();

            IResource res = g.GetResource(resourceUri);

            Assert.IsNotNull(res);
            Assert.IsTrue(res.IsReadOnly);
            Assert.AreEqual(resourceUri, res.Uri);
            Assert.Contains(nco.Contact, res.ListValues(rdf.type).ToList());


            resource = Model2.CreateResource(resourceUri);
            resource.AddProperty(rdf.type, nco.Contact);
            resource.Commit();

            res = g.GetResource(resourceUri);
            Assert.IsNotNull(res);
            Assert.AreEqual(1, res.ListValues(rdf.type).Count());
            Assert.IsTrue(res.IsReadOnly);
            Assert.AreEqual(resourceUri, res.Uri);
            Assert.Contains(nco.Contact, res.ListValues(rdf.type).ToList());
        }
Example #4
0
        public void TestModelGroup()
        {
            Uri         modelUri1 = new Uri("http://example.org/TestModel1");
            Uri         modelUri2 = new Uri("http://example.org/TestModel2");
            IModelGroup g         = Store.CreateModelGroup(modelUri1, modelUri2);
            var         query     = new SparqlQuery("PREFIX nco: <http://www.semanticdesktop.org/ontologies/2007/03/22/nco#> SELECT ?s ?p ?o WHERE { ?s ?p ?o. ?s nco:fullname 'Hans Wurscht'. }");

            query.Model = g;
            var x = query.ToString();
        }
Example #5
0
        public static IModel GetAllActivities()
        {
            IModelGroup result = _store.CreateModelGroup();

            result.Add(GetAgents(_store));
            result.Add(GetActivities(_store));
            result.Add(GetWebActivities(_store));

            return(result);
        }
 /// <summary>
 /// Generate a dataset clause for a model group.
 /// </summary>
 /// <param name="modelGroup">A model group.</param>
 /// <returns></returns>
 public static string GenerateDatasetClause(IModelGroup modelGroup)
 {
     if (modelGroup is ModelGroup)
     {
         return((modelGroup as ModelGroup).DatasetClause);
     }
     else
     {
         return(GenerateDatasetClause(modelGroup as IEnumerable <IModel>));
     }
 }
Example #7
0
        public void Inspect(Expression <Func <object> > modelRoot, string name)
        {
            IModelGroup Group = this.model.Groups.FirstOrDefault(group => group.Name == name) ?? ModelInspector.CreateNewGroup(this.model, name);

            Group.Models.Add(new ModelInfo(modelRoot, name, true));

            //Show on first entry
            if (this.model.Groups.Count == 1)
            {
                this.inspectorWindow.Show();
            }
        }
Example #8
0
        public void ResourceQueryTest()
        {
            Uri resourceUri = new Uri("http://example.com/testResource");

            IModelGroup g = Store.CreateModelGroup(Model.Uri, Model2.Uri);

            Contact resource = Model.CreateResource <Contact>(resourceUri);

            resource.Fullname = "Hans Peter";
            resource.Commit();

            ResourceQuery q = new ResourceQuery(nco.Contact);

            var res = g.GetResources(q);
        }
Example #9
0
        public void LazyLoadResourceTest()
        {
            IModel      model      = Model;
            IModelGroup modelGroup = Store.CreateModelGroup(Model.Uri, Model2.Uri);

            model.Clear();

            Uri testRes1         = new Uri("semio:test:testInstance");
            Uri testRes2         = new Uri("semio:test:testInstance2");
            MappingTestClass  t1 = model.CreateResource <MappingTestClass>(testRes1);
            MappingTestClass2 t2 = model.CreateResource <MappingTestClass2>(new Uri("semio:test:testInstance2"));

            t1.uniqueResourceTest = t2;
            // TODO: Debug messsage, because t2 was not commited
            t1.Commit();

            MappingTestClass p1 = modelGroup.GetResource <MappingTestClass>(testRes1);
            //Assert.AreEqual(null, p1.uniqueResourceTest);

            var v = p1.ListValues(TestOntology.uniqueResourceTest);

            Assert.AreEqual(t2.Uri.OriginalString, (v.First() as IResource).Uri.OriginalString);

            model.DeleteResource(t1);

            model.DeleteResource(t2);

            t1 = model.CreateResource <MappingTestClass>(testRes1);

            t2 = model.CreateResource <MappingTestClass2>(new Uri("semio:test:testInstance2"));
            t2.Commit();

            t1.uniqueResourceTest = t2;
            t1.Commit();

            var tt1 = modelGroup.GetResource <MappingTestClass>(testRes1);

            Assert.AreEqual(t2, tt1.uniqueResourceTest);

            IResource tr1 = modelGroup.GetResource(testRes1);

            Assert.AreEqual(typeof(MappingTestClass), tr1.GetType());
        }
Example #10
0
 public void WriteModelGroupToFile(IModelGroup modelGroup, MofXmiWriteOptions options)
 {
     _xmiSerializer.WriteModelGroupToFile(modelGroup, options);
 }
Example #11
0
 public IReadOnlyDictionary <string, string> WriteModelGroup(IModelGroup modelGroup, MofXmiWriteOptions options = null)
 {
     return(_xmiSerializer.WriteModelGroup(modelGroup, options));
 }