Skip to content
Browse files

nummeraanduiding correct

  • Loading branch information...
1 parent 38d9bfa commit 0ad9da57639ec659651f7c53edc195b8ce63b44b @milovanderlinden committed Mar 10, 2012
View
13 src/bagfilereader.py
@@ -167,6 +167,8 @@ def processDOM(self, node):
from objecten.ligplaats import Ligplaats
from objecten.standplaats import Standplaats
from objecten.pand import Pand
+ from objecten.nummeraanduiding import Nummeraanduiding
+
self.ligplaatsen = []
self.verblijfsobjecten = []
self.openbareRuimten = []
@@ -205,7 +207,8 @@ def processDOM(self, node):
elif node.localName == 'OpenbareRuimte':
_obj = OpenbareRuimte()
elif node.localName == 'Nummeraanduiding':
- _obj = Nummeraanduiding()
+ _obj = Nummeraanduiding(node, self.config)
+ self.nummeraanduidingen.append(_obj)
elif node.localName == 'Standplaats':
_obj = Standplaats(node,self.config)
self.standplaatsen.append(_obj)
@@ -216,10 +219,18 @@ def processDOM(self, node):
mydb = self.config.get_database()
mydb.verbind()
+ # TODO Momenteel worden de database acties geloopt en wordt elk individueel record gecommit.
+ # Ik denk erover om de commits te centraliseren en commitloops van bepaalde volumes te maken, b.v. een commitloop per duizend
+ # Dat maakt rollbacks ook eenvoudiger
+
for ligplaats in self.ligplaatsen:
ligplaats.insert()
mydb.uitvoeren(ligplaats.sql, ligplaats.valuelist)
+ for nummeraanduiding in self.nummeraanduidingen:
+ nummeraanduiding.insert()
+ mydb.uitvoeren(nummeraanduiding.sql, nummeraanduiding.valuelist)
+
for standplaats in self.standplaatsen:
standplaats.insert()
mydb.uitvoeren(standplaats.sql, standplaats.valuelist)
View
10 src/objecten/gerelateerdeopenbareruimte.py
@@ -1,13 +1,15 @@
-class GerelateerdeOpenbareRuimte():
+class Gerelateerdeopenbareruimte():
"""
BAG sub-klasse.
"""
- def __init__(self,xmlnode):
+ def __init__(self, xmlnode, configuratie):
+ self.config = configuratie
self.tag = "bag_LVC:gerelateerdeOpenbareRuimte"
self.naam = "gerelateerdeOpenbareRuimte"
self.type = ''
+ mydb = self.config.get_database()
for node in xmlnode.childNodes:
if node.localName == 'identificatie':
- self.identificatie = getText(node.childNodes)
+ self.identificatie = mydb.getText(node.childNodes)
def __repr__(self):
- return "<GerelateerdeOpenbareRuimte('%s')>" % (self.identificatie,)
+ return "<Gerelateerdeopenbareruimte('%s')>" % (self.identificatie,)
View
10 src/objecten/gerelateerdewoonplaats.py
@@ -1,17 +1,19 @@
-class GerelateerdeWoonplaats():
+class Gerelateerdewoonplaats():
"""
BAG sub-klasse.
"""
- def __init__(self,xmlnode=None):
+ def __init__(self,xmlnode, configuratie):
+ self.config = configuratie
self.tag = "bag_LVC:gerelateerdeWoonplaats"
self.naam = "gerelateerdeWoonplaats"
self.type = ''
+ mydb = self.config.get_database()
if xmlnode:
for node in xmlnode.childNodes:
if node.localName == 'identificatie':
- self.identificatie = getText(node.childNodes)
+ self.identificatie = mydb.getText(node.childNodes)
else:
self.identificatie = None
def __repr__(self):
- return "<GerelateerdeWoonplaats('%s')>" % (self.identificatie,)
+ return "<Gerelateerdewoonplaats('%s')>" % (self.identificatie,)
View
59 src/objecten/nummeraanduiding.py
@@ -1,43 +1,52 @@
+from objecten.gerelateerdewoonplaats import Gerelateerdewoonplaats
+from objecten.gerelateerdeopenbareruimte import Gerelateerdeopenbareruimte
+from objecten.tijdvakgeldigheid import Tijdvakgeldigheid
+from objecten.bron import Bron
+
class Nummeraanduiding():
- def __init__(self,xmlnode):
+
+ def __init__(self, xmlnode, configuratie):
+ self.config = configuratie
self.tag = "bag_LVC:Nummeraanduiding"
self.naam = "Nummeraanduiding"
self.type = 'NUM'
+
self.huisletter = None
self.huisnummertoevoeging = None
- self.gerelateerdeWoonplaats = GerelateerdeWoonplaats()
self.postcode = None
+ self.gerelateerdewoonplaats = Gerelateerdewoonplaats(None,self.config)
+ mydb = self.config.get_database()
for node in xmlnode.childNodes:
if node.localName == 'bron':
- self.bron = Bron(node)
+ self.bron = Bron(node, self.config)
if node.localName == 'tijdvakgeldigheid':
- self.tijdvakgeldigheid = Tijdvakgeldigheid(node)
+ self.tijdvakgeldigheid = Tijdvakgeldigheid(node, self.config)
if node.localName == 'identificatie':
- self.identificatie = getText(node.childNodes)
+ self.identificatie = mydb.getText(node.childNodes)
if node.localName == 'aanduidingRecordInactief':
- self.inactief = getText(node.childNodes)
+ self.inactief = mydb.getBoolean(node.childNodes)
if node.localName == 'aanduidingRecordCorrectie':
- self.correctie = getText(node.childNodes)
+ self.correctie = mydb.getText(node.childNodes)
if node.localName == 'officieel':
- self.officieel = getText(node.childNodes)
+ self.officieel = mydb.getBoolean(node.childNodes)
if node.localName == 'inOnderzoek':
- self.inonderzoek = getText(node.childNodes)
+ self.inonderzoek = mydb.getBoolean(node.childNodes)
if node.localName == 'huisnummer':
- self.huisnummer = getText(node.childNodes)
+ self.huisnummer = mydb.getText(node.childNodes)
if node.localName == 'huisletter':
- self.huisletter = getText(node.childNodes)
+ self.huisletter = mydb.getText(node.childNodes)
if node.localName == 'huisnummertoevoeging':
- self.huisnummertoevoeging = getText(node.childNodes)
+ self.huisnummertoevoeging = mydb.getText(node.childNodes)
if node.localName == 'postcode':
- self.postcode = getText(node.childNodes)
+ self.postcode = mydb.getText(node.childNodes)
if node.localName == 'nummeraanduidingStatus':
- self.status = getText(node.childNodes)
+ self.status = mydb.getText(node.childNodes)
if node.localName == 'typeAdresseerbaarObject':
- self.typeAdresseerbaarObject = getText(node.childNodes)
+ self.typeAdresseerbaarObject = mydb.getText(node.childNodes)
if node.localName == 'gerelateerdeOpenbareRuimte':
- self.gerelateerdeOpenbareRuimte = GerelateerdeOpenbareRuimte(node)
+ self.gerelateerdeopenbareruimte = Gerelateerdeopenbareruimte(node, self.config)
if node.localName == 'gerelateerdeWoonplaats':
- self.gerelateerdeWoonplaats = GerelateerdeWoonplaats(node)
+ self.gerelateerdewoonplaats = Gerelateerdewoonplaats(node, self.config)
def __repr__(self):
return "<Nummeraanduiding('%s', '%s', '%s')>" % (self.identificatie, self.tijdvakgeldigheid, self.bron)
@@ -59,21 +68,25 @@ def insert(self):
typeadresseerbaarobject,
gerelateerdeopenbareruimte,
gerelateerdewoonplaats,
- begindatum,
- einddatum)
+ begindatumtijdvakgeldigheid,
+ einddatumtijdvakgeldigheid)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)"""
self.valuelist = (self.identificatie, self.inactief, \
self.correctie, self.officieel, self.inonderzoek, \
self.bron.documentnummer, self.bron.documentdatum, \
self.huisnummer, self.huisletter, self.huisnummertoevoeging, \
self.postcode, self.status, self.typeAdresseerbaarObject, \
- self.gerelateerdeOpenbareRuimte.identificatie, \
- self.gerelateerdeWoonplaats.identificatie, self.tijdvakgeldigheid.begindatum, \
+ self.gerelateerdeopenbareruimte.identificatie, \
+ self.gerelateerdewoonplaats.identificatie, self.tijdvakgeldigheid.begindatum, \
self.tijdvakgeldigheid.einddatum)
- drop = "DROP TABLE IF EXISTS nummeraanduiding CASCADE;"
+ @staticmethod
+ def drop(schema):
+ return "DROP TABLE IF EXISTS " + schema + "nummeraanduiding CASCADE;"
- create = """CREATE TABLE nummeraanduiding (
+ @staticmethod
+ def create(schema):
+ return """CREATE TABLE """ + schema + """nummeraanduiding (
gid serial,
identificatie numeric(16,0),
aanduidingrecordinactief boolean,

0 comments on commit 0ad9da5

Please sign in to comment.
Something went wrong with that request. Please try again.