Project

General

Profile

1
package eu.dnetlib.enabling.datasources.common;
2

    
3
import java.sql.Date;
4
import java.util.Set;
5
import javax.persistence.*;
6

    
7
/**
8
 * Datasource
9
 */
10
@MappedSuperclass
11
public class Datasource<ORG extends Organization, ID extends Identity> {
12

    
13
	@Id
14
	protected String id;
15

    
16
	@Column(nullable = false)
17
	protected String officialname;
18
	protected String englishname;
19
	protected String websiteurl;
20
	protected String logourl;
21
	protected String contactemail;
22
	protected Double latitude;
23
	protected Double longitude;
24
	protected String timezone;
25

    
26
	@Column(name = "namespaceprefix", columnDefinition = "bpchar(12)", nullable = false, updatable = false)
27
	protected String namespaceprefix;
28

    
29
	protected String languages;
30

    
31
	protected String od_contenttypes;
32
	protected String collectedfrom;
33
	protected Date dateofvalidation;
34
	protected String typology;
35
	protected String provenanceaction;
36
	protected Date dateofcollection;
37
	protected String platform;
38

    
39
	@Column(name = "activationid")
40
	protected String activationId;
41
	protected String description;
42

    
43
	protected Date releasestartdate;
44
	protected Date releaseenddate;
45
	protected String missionstatementurl;
46
	protected Boolean dataprovider;
47
	protected Boolean serviceprovider;
48

    
49
	protected String databaseaccesstype;
50
	protected String datauploadtype;
51
	protected String databaseaccessrestriction;
52
	protected String datauploadrestriction;
53

    
54
	protected Boolean versioning;
55
	protected String citationguidelineurl;
56
	protected String qualitymanagementkind;
57
	protected String pidsystems;
58

    
59
	protected String certificates;
60
	protected String aggregator;
61

    
62
	protected String issn;
63
	protected String eissn;
64
	protected String lissn;
65

    
66
	protected String registeredby;
67

    
68
	private Date registrationdate;
69

    
70
	protected String subjects;
71

    
72
	protected Boolean managed;
73

    
74
	@ManyToMany(
75
			cascade = { CascadeType.PERSIST, CascadeType.MERGE },
76
			fetch = FetchType.LAZY)
77
	@JoinTable(
78
			name = "dsm_datasource_organization",
79
			joinColumns = @JoinColumn(name="datasource"),
80
			inverseJoinColumns = @JoinColumn(name="organization"))
81
	protected Set<ORG> organizations;
82

    
83
	@ManyToMany(
84
			cascade = { CascadeType.PERSIST, CascadeType.MERGE },
85
			fetch = FetchType.LAZY )
86
	@JoinTable(
87
			name = "dsm_datasourcepids",
88
			joinColumns = @JoinColumn(name = "datasource"),
89
			inverseJoinColumns = @JoinColumn(name = "pid"))
90
	protected Set<ID> identities;
91

    
92
	public Datasource() {}
93

    
94
	public String getId() {
95
		return id;
96
	}
97

    
98
	public String getOfficialname() {
99
		return officialname;
100
	}
101

    
102
	public String getEnglishname() {
103
		return englishname;
104
	}
105

    
106
	public String getWebsiteurl() {
107
		return websiteurl;
108
	}
109

    
110
	public String getLogourl() {
111
		return logourl;
112
	}
113

    
114
	public String getContactemail() {
115
		return contactemail;
116
	}
117

    
118
	public Double getLatitude() {
119
		return latitude;
120
	}
121

    
122
	public Double getLongitude() {
123
		return longitude;
124
	}
125

    
126
	public String getTimezone() {
127
		return timezone;
128
	}
129

    
130
	public String getNamespaceprefix() {
131
		return namespaceprefix;
132
	}
133

    
134
	public String getLanguages() {
135
		return languages;
136
	}
137

    
138
	public String getOd_contenttypes() {
139
		return od_contenttypes;
140
	}
141

    
142
	public String getCollectedfrom() {
143
		return collectedfrom;
144
	}
145

    
146
	public Date getDateofvalidation() {
147
		return dateofvalidation;
148
	}
149

    
150
	public String getTypology() {
151
		return typology;
152
	}
153

    
154
	public String getProvenanceaction() {
155
		return provenanceaction;
156
	}
157

    
158
	public Date getDateofcollection() {
159
		return dateofcollection;
160
	}
161

    
162
	public String getPlatform() {
163
		return platform;
164
	}
165

    
166
	public String getActivationId() {
167
		return activationId;
168
	}
169

    
170
	public String getDescription() {
171
		return description;
172
	}
173

    
174
	public Date getReleasestartdate() {
175
		return releasestartdate;
176
	}
177

    
178
	public Date getReleaseenddate() {
179
		return releaseenddate;
180
	}
181

    
182
	public String getMissionstatementurl() {
183
		return missionstatementurl;
184
	}
185

    
186
	public Boolean getDataprovider() {
187
		return dataprovider;
188
	}
189

    
190
	public Boolean getServiceprovider() {
191
		return serviceprovider;
192
	}
193

    
194
	public String getDatabaseaccesstype() {
195
		return databaseaccesstype;
196
	}
197

    
198
	public String getDatauploadtype() {
199
		return datauploadtype;
200
	}
201

    
202
	public String getDatabaseaccessrestriction() {
203
		return databaseaccessrestriction;
204
	}
205

    
206
	public String getDatauploadrestriction() {
207
		return datauploadrestriction;
208
	}
209

    
210
	public Boolean getVersioning() {
211
		return versioning;
212
	}
213

    
214
	public String getCitationguidelineurl() {
215
		return citationguidelineurl;
216
	}
217

    
218
	public String getQualitymanagementkind() {
219
		return qualitymanagementkind;
220
	}
221

    
222
	public String getPidsystems() {
223
		return pidsystems;
224
	}
225

    
226
	public String getCertificates() {
227
		return certificates;
228
	}
229

    
230
	public String getAggregator() {
231
		return aggregator;
232
	}
233

    
234
	public String getIssn() {
235
		return issn;
236
	}
237

    
238
	public String getEissn() {
239
		return eissn;
240
	}
241

    
242
	public String getLissn() {
243
		return lissn;
244
	}
245

    
246
	public String getRegisteredby() {
247
		return registeredby;
248
	}
249

    
250
	public Date getRegistrationdate() {
251
		return registrationdate;
252
	}
253

    
254
	public String getSubjects() {
255
		return subjects;
256
	}
257

    
258
	public Boolean getManaged() {
259
		return managed;
260
	}
261

    
262
	public Set<ORG> getOrganizations() {
263
		return organizations;
264
	}
265

    
266
	public Set<ID> getIdentities() {
267
		return identities;
268
	}
269

    
270
	public Datasource<ORG, ID> setId(final String id) {
271
		this.id = id;
272
		return this;
273
	}
274

    
275
	public Datasource<ORG, ID> setOfficialname(final String officialname) {
276
		this.officialname = officialname;
277
		return this;
278
	}
279

    
280
	public Datasource<ORG, ID> setEnglishname(final String englishname) {
281
		this.englishname = englishname;
282
		return this;
283
	}
284

    
285
	public Datasource<ORG, ID> setWebsiteurl(final String websiteurl) {
286
		this.websiteurl = websiteurl;
287
		return this;
288
	}
289

    
290
	public Datasource<ORG, ID> setLogourl(final String logourl) {
291
		this.logourl = logourl;
292
		return this;
293
	}
294

    
295
	public Datasource<ORG, ID> setContactemail(final String contactemail) {
296
		this.contactemail = contactemail;
297
		return this;
298
	}
299

    
300
	public Datasource<ORG, ID> setLatitude(final Double latitude) {
301
		this.latitude = latitude;
302
		return this;
303
	}
304

    
305
	public Datasource<ORG, ID> setLongitude(final Double longitude) {
306
		this.longitude = longitude;
307
		return this;
308
	}
309

    
310
	public Datasource<ORG, ID> setTimezone(final String timezone) {
311
		this.timezone = timezone;
312
		return this;
313
	}
314

    
315
	public Datasource<ORG, ID> setNamespaceprefix(final String namespaceprefix) {
316
		this.namespaceprefix = namespaceprefix;
317
		return this;
318
	}
319

    
320
	public Datasource<ORG, ID> setLanguages(final String languages) {
321
		this.languages = languages;
322
		return this;
323
	}
324

    
325
	public Datasource<ORG, ID> setOd_contenttypes(final String od_contenttypes) {
326
		this.od_contenttypes = od_contenttypes;
327
		return this;
328
	}
329

    
330
	public Datasource<ORG, ID> setCollectedfrom(final String collectedfrom) {
331
		this.collectedfrom = collectedfrom;
332
		return this;
333
	}
334

    
335
	public Datasource<ORG, ID> setDateofvalidation(final Date dateofvalidation) {
336
		this.dateofvalidation = dateofvalidation;
337
		return this;
338
	}
339

    
340
	public Datasource<ORG, ID> setTypology(final String typology) {
341
		this.typology = typology;
342
		return this;
343
	}
344

    
345
	public Datasource<ORG, ID> setProvenanceaction(final String provenanceaction) {
346
		this.provenanceaction = provenanceaction;
347
		return this;
348
	}
349

    
350
	public Datasource<ORG, ID> setDateofcollection(final Date dateofcollection) {
351
		this.dateofcollection = dateofcollection;
352
		return this;
353
	}
354

    
355
	public Datasource<ORG, ID> setPlatform(final String platform) {
356
		this.platform = platform;
357
		return this;
358
	}
359

    
360
	public Datasource<ORG, ID> setActivationId(final String activationId) {
361
		this.activationId = activationId;
362
		return this;
363
	}
364

    
365
	public Datasource<ORG, ID> setDescription(final String description) {
366
		this.description = description;
367
		return this;
368
	}
369

    
370
	public Datasource<ORG, ID> setReleasestartdate(final Date releasestartdate) {
371
		this.releasestartdate = releasestartdate;
372
		return this;
373
	}
374

    
375
	public Datasource<ORG, ID> setReleaseenddate(final Date releaseenddate) {
376
		this.releaseenddate = releaseenddate;
377
		return this;
378
	}
379

    
380
	public Datasource<ORG, ID> setMissionstatementurl(final String missionstatementurl) {
381
		this.missionstatementurl = missionstatementurl;
382
		return this;
383
	}
384

    
385
	public Datasource<ORG, ID> setDataprovider(final Boolean dataprovider) {
386
		this.dataprovider = dataprovider;
387
		return this;
388
	}
389

    
390
	public Datasource<ORG, ID> setServiceprovider(final Boolean serviceprovider) {
391
		this.serviceprovider = serviceprovider;
392
		return this;
393
	}
394

    
395
	public Datasource<ORG, ID> setDatabaseaccesstype(final String databaseaccesstype) {
396
		this.databaseaccesstype = databaseaccesstype;
397
		return this;
398
	}
399

    
400
	public Datasource<ORG, ID> setDatauploadtype(final String datauploadtype) {
401
		this.datauploadtype = datauploadtype;
402
		return this;
403
	}
404

    
405
	public Datasource<ORG, ID> setDatabaseaccessrestriction(final String databaseaccessrestriction) {
406
		this.databaseaccessrestriction = databaseaccessrestriction;
407
		return this;
408
	}
409

    
410
	public Datasource<ORG, ID> setDatauploadrestriction(final String datauploadrestriction) {
411
		this.datauploadrestriction = datauploadrestriction;
412
		return this;
413
	}
414

    
415
	public Datasource<ORG, ID> setVersioning(final Boolean versioning) {
416
		this.versioning = versioning;
417
		return this;
418
	}
419

    
420
	public Datasource<ORG, ID> setCitationguidelineurl(final String citationguidelineurl) {
421
		this.citationguidelineurl = citationguidelineurl;
422
		return this;
423
	}
424

    
425
	public Datasource<ORG, ID> setQualitymanagementkind(final String qualitymanagementkind) {
426
		this.qualitymanagementkind = qualitymanagementkind;
427
		return this;
428
	}
429

    
430
	public Datasource<ORG, ID> setPidsystems(final String pidsystems) {
431
		this.pidsystems = pidsystems;
432
		return this;
433
	}
434

    
435
	public Datasource<ORG, ID> setCertificates(final String certificates) {
436
		this.certificates = certificates;
437
		return this;
438
	}
439

    
440
	public Datasource<ORG, ID> setAggregator(final String aggregator) {
441
		this.aggregator = aggregator;
442
		return this;
443
	}
444

    
445
	public Datasource<ORG, ID> setIssn(final String issn) {
446
		this.issn = issn;
447
		return this;
448
	}
449

    
450
	public Datasource<ORG, ID> setEissn(final String eissn) {
451
		this.eissn = eissn;
452
		return this;
453
	}
454

    
455
	public Datasource<ORG, ID> setLissn(final String lissn) {
456
		this.lissn = lissn;
457
		return this;
458
	}
459

    
460
	public Datasource<ORG, ID> setRegisteredby(final String registeredby) {
461
		this.registeredby = registeredby;
462
		return this;
463
	}
464

    
465
	public Datasource setRegistrationdate(final Date registrationdate) {
466
		this.registrationdate = registrationdate;
467
		return this;
468
	}
469

    
470
	public Datasource<ORG, ID> setSubjects(final String subjects) {
471
		this.subjects = subjects;
472
		return this;
473
	}
474

    
475
	public Datasource<ORG, ID> setManaged(final Boolean managed) {
476
		this.managed = managed;
477
		return this;
478
	}
479

    
480
	public Datasource<ORG, ID> setOrganizations(final Set<ORG> organizations) {
481
		this.organizations = organizations;
482
		return this;
483
	}
484

    
485
	public Datasource<ORG, ID> setIdentities(final Set<ID> identities) {
486
		this.identities = identities;
487
		return this;
488
	}
489

    
490
}
(10-10/20)