nl_api 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,391 @@
1
+ Gemeentecode;Gemeentenaam;Provincienaam;Provinciecode
2
+ 1680;Aa en Hunze;Drenthe;22
3
+ 0738;Aalburg;Noord-Brabant;30
4
+ 0358;Aalsmeer;Noord-Holland;27
5
+ 0197;Aalten;Gelderland;25
6
+ 0059;Achtkarspelen;Friesland;21
7
+ 0482;Alblasserdam;Zuid-Holland;28
8
+ 0613;Albrandswaard;Zuid-Holland;28
9
+ 0361;Alkmaar;Noord-Holland;27
10
+ 0141;Almelo;Overijssel;23
11
+ 0034;Almere;Flevoland;24
12
+ 0484;Alphen aan den Rijn;Zuid-Holland;28
13
+ 1723;Alphen-Chaam;Noord-Brabant;30
14
+ 0060;Ameland;Friesland;21
15
+ 0307;Amersfoort;Utrecht;26
16
+ 0362;Amstelveen;Noord-Holland;27
17
+ 0363;Amsterdam;Noord-Holland;27
18
+ 0200;Apeldoorn;Gelderland;25
19
+ 0003;Appingedam;Groningen;20
20
+ 0202;Arnhem;Gelderland;25
21
+ 0106;Assen;Drenthe;22
22
+ 0743;Asten;Noord-Brabant;30
23
+ 0744;Baarle-Nassau;Noord-Brabant;30
24
+ 0308;Baarn;Utrecht;26
25
+ 0489;Barendrecht;Zuid-Holland;28
26
+ 0203;Barneveld;Gelderland;25
27
+ 0005;Bedum;Groningen;20
28
+ 0888;Beek;Limburg;31
29
+ 0370;Beemster;Noord-Holland;27
30
+ 0889;Beesel;Limburg;31
31
+ 0007;Bellingwedde;Groningen;20
32
+ 1945;Berg en Dal;Gelderland;25
33
+ 1724;Bergeijk;Noord-Brabant;30
34
+ 0893;Bergen (L.);Limburg;31
35
+ 0373;Bergen (NH.);Noord-Holland;27
36
+ 0748;Bergen op Zoom;Noord-Brabant;30
37
+ 1859;Berkelland;Gelderland;25
38
+ 1721;Bernheze;Noord-Brabant;30
39
+ 0753;Best;Noord-Brabant;30
40
+ 0209;Beuningen;Gelderland;25
41
+ 0375;Beverwijk;Noord-Holland;27
42
+ 0063;het Bildt;Friesland;21
43
+ 0310;De Bilt;Utrecht;26
44
+ 0585;Binnenmaas;Zuid-Holland;28
45
+ 1728;Bladel;Noord-Brabant;30
46
+ 0376;Blaricum;Noord-Holland;27
47
+ 0377;Bloemendaal;Noord-Holland;27
48
+ 1901;Bodegraven-Reeuwijk;Zuid-Holland;28
49
+ 0755;Boekel;Noord-Brabant;30
50
+ 0009;Ten Boer;Groningen;20
51
+ 1681;Borger-Odoorn;Drenthe;22
52
+ 0147;Borne;Overijssel;23
53
+ 0654;Borsele;Zeeland;29
54
+ 0756;Boxmeer;Noord-Brabant;30
55
+ 0757;Boxtel;Noord-Brabant;30
56
+ 0758;Breda;Noord-Brabant;30
57
+ 0501;Brielle;Zuid-Holland;28
58
+ 1876;Bronckhorst;Gelderland;25
59
+ 0213;Brummen;Gelderland;25
60
+ 0899;Brunssum;Limburg;31
61
+ 0312;Bunnik;Utrecht;26
62
+ 0313;Bunschoten;Utrecht;26
63
+ 0214;Buren;Gelderland;25
64
+ 0502;Capelle aan den IJssel;Zuid-Holland;28
65
+ 0383;Castricum;Noord-Holland;27
66
+ 0109;Coevorden;Drenthe;22
67
+ 1706;Cranendonck;Noord-Brabant;30
68
+ 0611;Cromstrijen;Zuid-Holland;28
69
+ 1684;Cuijk;Noord-Brabant;30
70
+ 0216;Culemborg;Gelderland;25
71
+ 0148;Dalfsen;Overijssel;23
72
+ 1891;Dantumadiel;Friesland;21
73
+ 0503;Delft;Zuid-Holland;28
74
+ 0010;Delfzijl;Groningen;20
75
+ 0762;Deurne;Noord-Brabant;30
76
+ 0150;Deventer;Overijssel;23
77
+ 0384;Diemen;Noord-Holland;27
78
+ 1774;Dinkelland;Overijssel;23
79
+ 0221;Doesburg;Gelderland;25
80
+ 0222;Doetinchem;Gelderland;25
81
+ 0766;Dongen;Noord-Brabant;30
82
+ 0058;Dongeradeel;Friesland;21
83
+ 0505;Dordrecht;Zuid-Holland;28
84
+ 0498;Drechterland;Noord-Holland;27
85
+ 1719;Drimmelen;Noord-Brabant;30
86
+ 0303;Dronten;Flevoland;24
87
+ 0225;Druten;Gelderland;25
88
+ 0226;Duiven;Gelderland;25
89
+ 1711;Echt-Susteren;Limburg;31
90
+ 0385;Edam-Volendam;Noord-Holland;27
91
+ 0228;Ede;Gelderland;25
92
+ 0317;Eemnes;Utrecht;26
93
+ 1651;Eemsmond;Groningen;20
94
+ 0770;Eersel;Noord-Brabant;30
95
+ 1903;Eijsden-Margraten;Limburg;31
96
+ 0772;Eindhoven;Noord-Brabant;30
97
+ 0230;Elburg;Gelderland;25
98
+ 0114;Emmen;Drenthe;22
99
+ 0388;Enkhuizen;Noord-Holland;27
100
+ 0153;Enschede;Overijssel;23
101
+ 0232;Epe;Gelderland;25
102
+ 0233;Ermelo;Gelderland;25
103
+ 0777;Etten-Leur;Noord-Brabant;30
104
+ 1722;Ferwerderadiel;Friesland;21
105
+ 0070;Franekeradeel;Friesland;21
106
+ 1940;De Fryske Marren;Friesland;21
107
+ 0779;Geertruidenberg;Noord-Brabant;30
108
+ 0236;Geldermalsen;Gelderland;25
109
+ 1771;Geldrop-Mierlo;Noord-Brabant;30
110
+ 1652;Gemert-Bakel;Noord-Brabant;30
111
+ 0907;Gennep;Limburg;31
112
+ 0689;Giessenlanden;Zuid-Holland;28
113
+ 0784;Gilze en Rijen;Noord-Brabant;30
114
+ 1924;Goeree-Overflakkee;Zuid-Holland;28
115
+ 0664;Goes;Zeeland;29
116
+ 0785;Goirle;Noord-Brabant;30
117
+ 1942;Gooise Meren;Noord-Holland;27
118
+ 0512;Gorinchem;Zuid-Holland;28
119
+ 0513;Gouda;Zuid-Holland;28
120
+ 0786;Grave;Noord-Brabant;30
121
+ 0518;'s-Gravenhage;Zuid-Holland;28
122
+ 0014;Groningen;Groningen;20
123
+ 0015;Grootegast;Groningen;20
124
+ 1729;Gulpen-Wittem;Limburg;31
125
+ 0158;Haaksbergen;Overijssel;23
126
+ 0788;Haaren;Noord-Brabant;30
127
+ 0392;Haarlem;Noord-Holland;27
128
+ 0393;Haarlemmerliede en Spaarnwoude;Noord-Holland;27
129
+ 0394;Haarlemmermeer;Noord-Holland;27
130
+ 1655;Halderberge;Noord-Brabant;30
131
+ 0160;Hardenberg;Overijssel;23
132
+ 0243;Harderwijk;Gelderland;25
133
+ 0523;Hardinxveld-Giessendam;Zuid-Holland;28
134
+ 0017;Haren;Groningen;20
135
+ 0072;Harlingen;Friesland;21
136
+ 0244;Hattem;Gelderland;25
137
+ 0396;Heemskerk;Noord-Holland;27
138
+ 0397;Heemstede;Noord-Holland;27
139
+ 0246;Heerde;Gelderland;25
140
+ 0074;Heerenveen;Friesland;21
141
+ 0398;Heerhugowaard;Noord-Holland;27
142
+ 0917;Heerlen;Limburg;31
143
+ 1658;Heeze-Leende;Noord-Brabant;30
144
+ 0399;Heiloo;Noord-Holland;27
145
+ 0400;Den Helder;Noord-Holland;27
146
+ 0163;Hellendoorn;Overijssel;23
147
+ 0530;Hellevoetsluis;Zuid-Holland;28
148
+ 0794;Helmond;Noord-Brabant;30
149
+ 0531;Hendrik-Ido-Ambacht;Zuid-Holland;28
150
+ 0164;Hengelo;Overijssel;23
151
+ 0796;'s-Hertogenbosch;Noord-Brabant;30
152
+ 0252;Heumen;Gelderland;25
153
+ 0797;Heusden;Noord-Brabant;30
154
+ 0534;Hillegom;Zuid-Holland;28
155
+ 0798;Hilvarenbeek;Noord-Brabant;30
156
+ 0402;Hilversum;Noord-Holland;27
157
+ 1735;Hof van Twente;Overijssel;23
158
+ 1911;Hollands Kroon;Noord-Holland;27
159
+ 0118;Hoogeveen;Drenthe;22
160
+ 0018;Hoogezand-Sappemeer;Groningen;20
161
+ 0405;Hoorn;Noord-Holland;27
162
+ 1507;Horst aan de Maas;Limburg;31
163
+ 0321;Houten;Utrecht;26
164
+ 0406;Huizen;Noord-Holland;27
165
+ 0677;Hulst;Zeeland;29
166
+ 0353;IJsselstein;Utrecht;26
167
+ 1884;Kaag en Braassem;Zuid-Holland;28
168
+ 0166;Kampen;Overijssel;23
169
+ 0678;Kapelle;Zeeland;29
170
+ 0537;Katwijk;Zuid-Holland;28
171
+ 0928;Kerkrade;Limburg;31
172
+ 1598;Koggenland;Noord-Holland;27
173
+ 0079;Kollumerland en Nieuwkruisland;Friesland;21
174
+ 0588;Korendijk;Zuid-Holland;28
175
+ 0542;Krimpen aan den IJssel;Zuid-Holland;28
176
+ 1931;Krimpenerwaard;Zuid-Holland;28
177
+ 1659;Laarbeek;Noord-Brabant;30
178
+ 1685;Landerd;Noord-Brabant;30
179
+ 0882;Landgraaf;Limburg;31
180
+ 0415;Landsmeer;Noord-Holland;27
181
+ 0416;Langedijk;Noord-Holland;27
182
+ 1621;Lansingerland;Zuid-Holland;28
183
+ 0417;Laren;Noord-Holland;27
184
+ 0022;Leek;Groningen;20
185
+ 0545;Leerdam;Zuid-Holland;28
186
+ 0080;Leeuwarden;Friesland;21
187
+ 0081;Leeuwarderadeel;Friesland;21
188
+ 0546;Leiden;Zuid-Holland;28
189
+ 0547;Leiderdorp;Zuid-Holland;28
190
+ 1916;Leidschendam-Voorburg;Zuid-Holland;28
191
+ 0995;Lelystad;Flevoland;24
192
+ 1640;Leudal;Limburg;31
193
+ 0327;Leusden;Utrecht;26
194
+ 0733;Lingewaal;Gelderland;25
195
+ 1705;Lingewaard;Gelderland;25
196
+ 0553;Lisse;Zuid-Holland;28
197
+ 0140;Littenseradiel;Friesland;21
198
+ 0262;Lochem;Gelderland;25
199
+ 0809;Loon op Zand;Noord-Brabant;30
200
+ 0331;Lopik;Utrecht;26
201
+ 0024;Loppersum;Groningen;20
202
+ 0168;Losser;Overijssel;23
203
+ 0263;Maasdriel;Gelderland;25
204
+ 1641;Maasgouw;Limburg;31
205
+ 0556;Maassluis;Zuid-Holland;28
206
+ 0935;Maastricht;Limburg;31
207
+ 1663;De Marne;Groningen;20
208
+ 0025;Marum;Groningen;20
209
+ 0420;Medemblik;Noord-Holland;27
210
+ 0938;Meerssen;Limburg;31
211
+ 1908;Menameradiel;Friesland;21
212
+ 1987;Menterwolde;Groningen;20
213
+ 0119;Meppel;Drenthe;22
214
+ 0687;Middelburg;Zeeland;29
215
+ 1842;Midden-Delfland;Zuid-Holland;28
216
+ 1731;Midden-Drenthe;Drenthe;22
217
+ 0815;Mill en Sint Hubert;Noord-Brabant;30
218
+ 1709;Moerdijk;Noord-Brabant;30
219
+ 1927;Molenwaard;Zuid-Holland;28
220
+ 1955;Montferland;Gelderland;25
221
+ 0335;Montfoort;Utrecht;26
222
+ 0944;Mook en Middelaar;Limburg;31
223
+ 1740;Neder-Betuwe;Gelderland;25
224
+ 0946;Nederweert;Limburg;31
225
+ 0304;Neerijnen;Gelderland;25
226
+ 0356;Nieuwegein;Utrecht;26
227
+ 0569;Nieuwkoop;Zuid-Holland;28
228
+ 0267;Nijkerk;Gelderland;25
229
+ 0268;Nijmegen;Gelderland;25
230
+ 1930;Nissewaard;Zuid-Holland;28
231
+ 1695;Noord-Beveland;Zeeland;29
232
+ 1699;Noordenveld;Drenthe;22
233
+ 0171;Noordoostpolder;Flevoland;24
234
+ 0575;Noordwijk;Zuid-Holland;28
235
+ 0576;Noordwijkerhout;Zuid-Holland;28
236
+ 0820;Nuenen, Gerwen en Nederwetten;Noord-Brabant;30
237
+ 0302;Nunspeet;Gelderland;25
238
+ 0951;Nuth;Limburg;31
239
+ 0579;Oegstgeest;Zuid-Holland;28
240
+ 0823;Oirschot;Noord-Brabant;30
241
+ 0824;Oisterwijk;Noord-Brabant;30
242
+ 1895;Oldambt;Groningen;20
243
+ 0269;Oldebroek;Gelderland;25
244
+ 0173;Oldenzaal;Overijssel;23
245
+ 1773;Olst-Wijhe;Overijssel;23
246
+ 0175;Ommen;Overijssel;23
247
+ 0881;Onderbanken;Limburg;31
248
+ 1586;Oost Gelre;Gelderland;25
249
+ 0826;Oosterhout;Noord-Brabant;30
250
+ 0085;Ooststellingwerf;Friesland;21
251
+ 0431;Oostzaan;Noord-Holland;27
252
+ 0432;Opmeer;Noord-Holland;27
253
+ 0086;Opsterland;Friesland;21
254
+ 0828;Oss;Noord-Brabant;30
255
+ 0584;Oud-Beijerland;Zuid-Holland;28
256
+ 1509;Oude IJsselstreek;Gelderland;25
257
+ 0437;Ouder-Amstel;Noord-Holland;27
258
+ 0589;Oudewater;Utrecht;26
259
+ 1734;Overbetuwe;Gelderland;25
260
+ 0590;Papendrecht;Zuid-Holland;28
261
+ 1894;Peel en Maas;Limburg;31
262
+ 0765;Pekela;Groningen;20
263
+ 1926;Pijnacker-Nootdorp;Zuid-Holland;28
264
+ 0439;Purmerend;Noord-Holland;27
265
+ 0273;Putten;Gelderland;25
266
+ 0177;Raalte;Overijssel;23
267
+ 0703;Reimerswaal;Zeeland;29
268
+ 0274;Renkum;Gelderland;25
269
+ 0339;Renswoude;Utrecht;26
270
+ 1667;Reusel-De Mierden;Noord-Brabant;30
271
+ 0275;Rheden;Gelderland;25
272
+ 0340;Rhenen;Utrecht;26
273
+ 0597;Ridderkerk;Zuid-Holland;28
274
+ 0196;Rijnwaarden;Gelderland;25
275
+ 1742;Rijssen-Holten;Overijssel;23
276
+ 0603;Rijswijk;Zuid-Holland;28
277
+ 1669;Roerdalen;Limburg;31
278
+ 0957;Roermond;Limburg;31
279
+ 0736;De Ronde Venen;Utrecht;26
280
+ 1674;Roosendaal;Noord-Brabant;30
281
+ 0599;Rotterdam;Zuid-Holland;28
282
+ 0277;Rozendaal;Gelderland;25
283
+ 0840;Rucphen;Noord-Brabant;30
284
+ 0441;Schagen;Noord-Holland;27
285
+ 0279;Scherpenzeel;Gelderland;25
286
+ 0606;Schiedam;Zuid-Holland;28
287
+ 0088;Schiermonnikoog;Friesland;21
288
+ 0844;Schijndel;Noord-Brabant;30
289
+ 0962;Schinnen;Limburg;31
290
+ 1676;Schouwen-Duiveland;Zeeland;29
291
+ 0965;Simpelveld;Limburg;31
292
+ 1702;Sint Anthonis;Noord-Brabant;30
293
+ 0845;Sint-Michielsgestel;Noord-Brabant;30
294
+ 0846;Sint-Oedenrode;Noord-Brabant;30
295
+ 1883;Sittard-Geleen;Limburg;31
296
+ 0610;Sliedrecht;Zuid-Holland;28
297
+ 0040;Slochteren;Groningen;20
298
+ 1714;Sluis;Zeeland;29
299
+ 0090;Smallingerland;Friesland;21
300
+ 0342;Soest;Utrecht;26
301
+ 0847;Someren;Noord-Brabant;30
302
+ 0848;Son en Breugel;Noord-Brabant;30
303
+ 0037;Stadskanaal;Groningen;20
304
+ 0180;Staphorst;Overijssel;23
305
+ 0532;Stede Broec;Noord-Holland;27
306
+ 0851;Steenbergen;Noord-Brabant;30
307
+ 1708;Steenwijkerland;Overijssel;23
308
+ 0971;Stein;Limburg;31
309
+ 1904;Stichtse Vecht;Utrecht;26
310
+ 0617;Strijen;Zuid-Holland;28
311
+ 1900;Sœdwest-Frysl‰n;Friesland;21
312
+ 0715;Terneuzen;Zeeland;29
313
+ 0093;Terschelling;Friesland;21
314
+ 0448;Texel;Noord-Holland;27
315
+ 1525;Teylingen;Zuid-Holland;28
316
+ 0716;Tholen;Zeeland;29
317
+ 0281;Tiel;Gelderland;25
318
+ 0855;Tilburg;Noord-Brabant;30
319
+ 0183;Tubbergen;Overijssel;23
320
+ 1700;Twenterand;Overijssel;23
321
+ 1730;Tynaarlo;Drenthe;22
322
+ 0737;Tytsjerksteradiel;Friesland;21
323
+ 0856;Uden;Noord-Brabant;30
324
+ 0450;Uitgeest;Noord-Holland;27
325
+ 0451;Uithoorn;Noord-Holland;27
326
+ 0184;Urk;Flevoland;24
327
+ 0344;Utrecht;Utrecht;26
328
+ 1581;Utrechtse Heuvelrug;Utrecht;26
329
+ 0981;Vaals;Limburg;31
330
+ 0994;Valkenburg aan de Geul;Limburg;31
331
+ 0858;Valkenswaard;Noord-Brabant;30
332
+ 0047;Veendam;Groningen;20
333
+ 0345;Veenendaal;Utrecht;26
334
+ 0717;Veere;Zeeland;29
335
+ 0860;Veghel;Noord-Brabant;30
336
+ 0861;Veldhoven;Noord-Brabant;30
337
+ 0453;Velsen;Noord-Holland;27
338
+ 0983;Venlo;Limburg;31
339
+ 0984;Venray;Limburg;31
340
+ 0620;Vianen;Utrecht;26
341
+ 0622;Vlaardingen;Zuid-Holland;28
342
+ 0048;Vlagtwedde;Groningen;20
343
+ 0096;Vlieland;Friesland;21
344
+ 0718;Vlissingen;Zeeland;29
345
+ 0986;Voerendaal;Limburg;31
346
+ 0626;Voorschoten;Zuid-Holland;28
347
+ 0285;Voorst;Gelderland;25
348
+ 0865;Vught;Noord-Brabant;30
349
+ 0866;Waalre;Noord-Brabant;30
350
+ 0867;Waalwijk;Noord-Brabant;30
351
+ 0627;Waddinxveen;Zuid-Holland;28
352
+ 0289;Wageningen;Gelderland;25
353
+ 0629;Wassenaar;Zuid-Holland;28
354
+ 0852;Waterland;Noord-Holland;27
355
+ 0988;Weert;Limburg;31
356
+ 0457;Weesp;Noord-Holland;27
357
+ 0870;Werkendam;Noord-Brabant;30
358
+ 0668;West Maas en Waal;Gelderland;25
359
+ 1701;Westerveld;Drenthe;22
360
+ 0293;Westervoort;Gelderland;25
361
+ 1783;Westland;Zuid-Holland;28
362
+ 0098;Weststellingwerf;Friesland;21
363
+ 0614;Westvoorne;Zuid-Holland;28
364
+ 0189;Wierden;Overijssel;23
365
+ 0296;Wijchen;Gelderland;25
366
+ 1696;Wijdemeren;Noord-Holland;27
367
+ 0352;Wijk bij Duurstede;Utrecht;26
368
+ 0053;Winsum;Groningen;20
369
+ 0294;Winterswijk;Gelderland;25
370
+ 0873;Woensdrecht;Noord-Brabant;30
371
+ 0632;Woerden;Utrecht;26
372
+ 1690;De Wolden;Drenthe;22
373
+ 0880;Wormerland;Noord-Holland;27
374
+ 0351;Woudenberg;Utrecht;26
375
+ 0874;Woudrichem;Noord-Brabant;30
376
+ 0479;Zaanstad;Noord-Holland;27
377
+ 0297;Zaltbommel;Gelderland;25
378
+ 0473;Zandvoort;Noord-Holland;27
379
+ 0707;Zederik;Zuid-Holland;28
380
+ 0050;Zeewolde;Flevoland;24
381
+ 0355;Zeist;Utrecht;26
382
+ 0299;Zevenaar;Gelderland;25
383
+ 0637;Zoetermeer;Zuid-Holland;28
384
+ 0638;Zoeterwoude;Zuid-Holland;28
385
+ 0056;Zuidhorn;Groningen;20
386
+ 1892;Zuidplas;Zuid-Holland;28
387
+ 0879;Zundert;Noord-Brabant;30
388
+ 0301;Zutphen;Gelderland;25
389
+ 1896;Zwartewaterland;Overijssel;23
390
+ 0642;Zwijndrecht;Zuid-Holland;28
391
+ 0193;Zwolle;Overijssel;23
@@ -0,0 +1,67 @@
1
+ class NlApi::Municipality
2
+ attr_reader :code, :name, :province_name, :province_code
3
+
4
+ def initialize(attributes)
5
+ @code = attributes[:code]
6
+ @name = attributes[:name]
7
+ @province_name = attributes[:province_name]
8
+ @province_code = attributes[:province_code]
9
+ end
10
+
11
+ def province
12
+ self.class.provinces[province_code] ||= NlApi::Province.new(province_code, province_name)
13
+ end
14
+
15
+ class << self
16
+ include Enumerable
17
+ require 'csv'
18
+
19
+ attr_writer :filename
20
+ attr_writer :provinces
21
+
22
+ def filename
23
+ @filename ||= '../../data/gemeentenalfabetisch2016.csv'
24
+ end
25
+
26
+ def path
27
+ File.join(File.dirname(File.expand_path(__FILE__)), filename)
28
+ end
29
+
30
+ def read_csv
31
+ @store ||= CSV.read(path, headers: true, col_sep: ';').map{ |line|
32
+ NlApi::Municipality.new(
33
+ code: line[0].to_i,
34
+ name: line[1],
35
+ province_name: line[2],
36
+ province_code: line[3].to_i
37
+ ) }
38
+ end
39
+
40
+ def provinces
41
+ @provinces ||= {}
42
+ end
43
+
44
+ def all
45
+ @all ||= read_csv
46
+ end
47
+
48
+ def each(&block)
49
+ all.each(&block)
50
+ self
51
+ end
52
+
53
+ def find_by(where)
54
+ field = where.keys.first
55
+ value = where.values.first
56
+
57
+ find{ |i| i.send(field.to_sym) == value }
58
+ end
59
+
60
+ def find_all_by(where)
61
+ field = where.keys.first
62
+ value = where.values.first
63
+
64
+ find_all{ |i| i.send(field.to_sym) == value }
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,14 @@
1
+ class NlApi::Province
2
+
3
+ attr_accessor :province_code, :province_name
4
+
5
+ def initialize(province_code, province_name)
6
+ @province_name = province_name
7
+ @province_code = province_code
8
+ end
9
+
10
+ def municipalities
11
+ @municipalities ||= NlApi::Municipality.find_all_by(province_code: province_code)
12
+ end
13
+
14
+ end
@@ -0,0 +1,3 @@
1
+ module NlApi
2
+ VERSION = "1.0.0"
3
+ end
data/lib/nl_api.rb ADDED
@@ -0,0 +1,5 @@
1
+ require "nl_api/version"
2
+ require "nl_api/municipality"
3
+ require "nl_api/province"
4
+ module NlApi
5
+ end
data/nl_api.gemspec ADDED
@@ -0,0 +1,25 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'nl_api/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "nl_api"
8
+ spec.version = NlApi::VERSION
9
+ spec.authors = ["Maarten van Vliet"]
10
+ spec.email = ["maartenvanvliet@gmail.com"]
11
+
12
+ spec.summary = %q{Simple wrapper for CBS municipality data}
13
+ spec.description = %q{Simple wrapper for CBS municipality data. Useful for finding province/municipalities by their codes or vice versa}
14
+ spec.homepage = "https://gitlab.com/maartenvanvliet/nl_api"
15
+ spec.license = "MIT"
16
+
17
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
+ spec.bindir = "exe"
19
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
+ spec.require_paths = ["lib"]
21
+
22
+ spec.add_development_dependency "bundler", "~> 1.11"
23
+ spec.add_development_dependency "rake", "~> 10.0"
24
+ spec.add_development_dependency "rspec", "~> 3.0"
25
+ end
metadata ADDED
@@ -0,0 +1,104 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: nl_api
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Maarten van Vliet
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2016-02-24 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.11'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.11'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.0'
55
+ description: Simple wrapper for CBS municipality data. Useful for finding province/municipalities
56
+ by their codes or vice versa
57
+ email:
58
+ - maartenvanvliet@gmail.com
59
+ executables: []
60
+ extensions: []
61
+ extra_rdoc_files: []
62
+ files:
63
+ - ".gitignore"
64
+ - ".rspec"
65
+ - CODE_OF_CONDUCT.md
66
+ - Gemfile
67
+ - LICENSE.txt
68
+ - README.md
69
+ - Rakefile
70
+ - bin/console
71
+ - bin/setup
72
+ - data/BAG_gemeententabel.csv
73
+ - data/gemeentenalfabetisch2016.csv
74
+ - lib/nl_api.rb
75
+ - lib/nl_api/municipality.rb
76
+ - lib/nl_api/province.rb
77
+ - lib/nl_api/version.rb
78
+ - nl_api.gemspec
79
+ homepage: https://gitlab.com/maartenvanvliet/nl_api
80
+ licenses:
81
+ - MIT
82
+ metadata: {}
83
+ post_install_message:
84
+ rdoc_options: []
85
+ require_paths:
86
+ - lib
87
+ required_ruby_version: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: '0'
92
+ required_rubygems_version: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ requirements: []
98
+ rubyforge_project:
99
+ rubygems_version: 2.2.2
100
+ signing_key:
101
+ specification_version: 4
102
+ summary: Simple wrapper for CBS municipality data
103
+ test_files: []
104
+ has_rdoc: