comparison import/Import.cpp @ 28:7d8a6167febb classical-rdf

* Begin new text entry / search widget & test utility for it * Improve typing matching methods * Update code to use ObjectLoader/Storer instead of old-style ObjectMapper
author Chris Cannam
date Mon, 01 Mar 2010 16:51:14 +0000
parents 437442790e51
children
comparison
equal deleted inserted replaced
27:e8160a2d8b28 28:7d8a6167febb
2 2
3 #include "Objects.h" 3 #include "Objects.h"
4 4
5 #include <dataquay/BasicStore.h> 5 #include <dataquay/BasicStore.h>
6 #include <dataquay/RDFException.h> 6 #include <dataquay/RDFException.h>
7 #include <dataquay/objectmapper/ObjectMapper.h> 7 #include <dataquay/objectmapper/ObjectStorer.h>
8 #include <dataquay/objectmapper/ObjectLoader.h>
8 #include <dataquay/objectmapper/ObjectBuilder.h> 9 #include <dataquay/objectmapper/ObjectBuilder.h>
10 #include <dataquay/objectmapper/TypeMapping.h>
9 #include <dataquay/objectmapper/ContainerBuilder.h> 11 #include <dataquay/objectmapper/ContainerBuilder.h>
10 12
11 #include "ImportClassicalComposersOrg.h" 13 #include "ImportClassicalComposersOrg.h"
12 #include "ImportClassicalDotNet.h" 14 #include "ImportClassicalDotNet.h"
13 #include "ImportClassicalArchives.h" 15 #include "ImportClassicalArchives.h"
487 <WikipediaWorksListImporter>("ClassicalData::WikipediaWorksListImporter*"); 489 <WikipediaWorksListImporter>("ClassicalData::WikipediaWorksListImporter*");
488 ObjectBuilder::getInstance()->registerClass 490 ObjectBuilder::getInstance()->registerClass
489 <HobokenImporter>("ClassicalData::HobokenImporter*"); 491 <HobokenImporter>("ClassicalData::HobokenImporter*");
490 492
491 BasicStore *store = BasicStore::load(QUrl("file:importers.ttl")); 493 BasicStore *store = BasicStore::load(QUrl("file:importers.ttl"));
492 ObjectMapper mapper(store); 494 ObjectLoader loader(store);
493 QObject *parentObject = mapper.loadAllObjects(new QObject()); 495 QObject *parentObject = loader.loadAllObjects(new QObject());
494 496
495 BasicStore *outstore = new BasicStore(); 497 BasicStore *outstore = new BasicStore();
496 outstore->setBaseUri(Uri("http://dbtune.org/classical/resource/")); 498 outstore->setBaseUri(Uri("http://dbtune.org/classical/resource/"));
497 ObjectMapper outmapper(outstore); 499 ObjectStorer storer(outstore);
500 TypeMapping tm;
498 501
499 TypeRegistrar::registerTypes(); 502 TypeRegistrar::registerTypes();
500 TypeRegistrar::addMappings(outstore, &outmapper); 503 TypeRegistrar::addMappings(outstore, &tm);
501 504
502 outmapper.setPropertyStorePolicy(ObjectMapper::StoreIfChanged); 505 storer.setTypeMapping(tm);
503 outmapper.setObjectStorePolicy(ObjectMapper::StoreAllObjects); 506 storer.setPropertyStorePolicy(ObjectStorer::StoreIfChanged);
504 outmapper.setBlankNodePolicy(ObjectMapper::NoBlankNodes); 507 storer.setObjectStorePolicy(ObjectStorer::StoreAllObjects);
508 storer.setBlankNodePolicy(ObjectStorer::NoBlankNodes);
505 509
506 QList<Importer *> importers = parentObject->findChildren<Importer *>(); 510 QList<Importer *> importers = parentObject->findChildren<Importer *>();
507 std::cerr << "have " << importers.size() << " importers" << std::endl; 511 std::cerr << "have " << importers.size() << " importers" << std::endl;
508 512
509 ComposerMap composers; 513 ComposerMap composers;
612 if (u != "") storedUris.insert(u); 616 if (u != "") storedUris.insert(u);
613 } 617 }
614 } 618 }
615 619
616 try { 620 try {
617 outmapper.storeAllObjects(toStore); 621 storer.storeAllObjects(toStore);
618 622
619 } catch (RDFException e) { 623 } catch (RDFException e) {
620 std::cerr << "Caught RDF exception: " << e.what() << std::endl; 624 std::cerr << "Caught RDF exception: " << e.what() << std::endl;
621 } 625 }
622 626