Project

General

Profile

1
// Generated using typescript-generator version 1.29.366 on 2018-02-05 16:06:12.
2

    
3
export class BrowseData {
4
    data: { [index: string]: FieldData };
5
    fields: string[];
6
}
7

    
8
export class DataCollectionAccessProtocol {
9
    value: string;
10
    username: string;
11
    password: string;
12
}
13

    
14
export class DataCollectionInterface {
15
    protocol: DataCollectionAccessProtocol;
16
    baseUrl: string;
17
    format: string;
18
    filter: string;
19
}
20

    
21
export class DataCollectionType {
22
    dataCollectionInterface: DataCollectionInterface;
23
    id: string;
24
    label: string;
25
    group: string;
26
}
27

    
28
export class Document {
29
    map: { [index: string]: string[] };
30
    fieldNames: string[];
31
}
32

    
33
export class FieldData {
34
    fieldRowList: FieldRow[];
35
    count: number[];
36
    values: string[];
37
}
38

    
39
export class FieldRow {
40
    value: string;
41
    count: number;
42
}
43

    
44
export class FormattedSearchResult {
45
    formattedResult: string;
46
    resultsNumber: number;
47
}
48

    
49
export class Hint {
50
    alternateTerm: string;
51
    autoFollowHint: boolean;
52
}
53

    
54
export class DriverResource implements Serializable {
55
    resourceId: string;
56
    resourceUri: string;
57
    resourceKind: string;
58
    resourceType: string;
59
    dateOfCreation: Date;
60
}
61

    
62
export class MDFormatDataStructure extends DriverResource {
63
    resourceName: string;
64
    layouts: { [index: string]: LayoutField[] };
65
}
66

    
67
export class PiwikInfo implements IsSerializable {
68
    repositoryId: string;
69
    openaireId: string;
70
    repositoryName: string;
71
    country: string;
72
    siteId: string;
73
    authenticationToken: string;
74
    creationDate: Date;
75
    requestorName: string;
76
    requestorEmail: string;
77
    validated: boolean;
78
    validationDate: Date;
79
    comment: string;
80
}
81

    
82
export class Repository extends DriverResource implements IsSerializable {
83
  id: string;
84
  officialName: string;
85
  englishName: string;
86
  websiteUrl: string;
87
  logoUrl: string;
88
  contactEmail: string;
89
  countryName: string;
90
  countryCode: string;
91
  organization: string;
92
  latitude: number;
93
  longitude: number;
94
  timezone: number;
95
  namespacePrefix: string;
96
  odNumberOfItems: string;
97
  odNumberOfItemsDate: string;
98
  odPolicies: string;
99
  odLanguages: string;
100
  odContentTypes: string;
101
  collectedFrom: string;
102
  inferred: boolean;
103
  deletedByInference: boolean;
104
  trust: number;
105
  inferenceProvenance: string;
106
  dateOfValidation: Date;
107
  datasourceClass: string;
108
  provenanceActionClass: string;
109
  dateOfCollection: Date;
110
  typology: string;
111
  activationId: string;
112
  mergehomonyms: boolean;
113
  description: string;
114
  releaseStartDate: Date;
115
  releaseEndDate: Date;
116
  missionStatementUrl: string;
117
  dataProvider: boolean;
118
  serviceProvider: boolean;
119
  databaseAccessType: string;
120
  dataUploadType: string;
121
  databaseAccessRestriction: string;
122
  dataUploadRestriction: string;
123
  versioning: boolean;
124
  citationGuidelineUrl: string;
125
  qualityManagementKind: string;
126
  pidSystems: string;
127
  certificates: string;
128
  aggregator: string;
129
  issn: string;
130
  eissn: string;
131
  lissn: string;
132
  interfaces: RepositoryInterface[];
133
  availableDiskSpace: string;
134
  securityParameters: string;
135
  protocol: string;
136
  registeredBy: string;
137
  datasourceType: string;
138
  datasourceAggregatorId: string;
139
  datasourceOriginalIdValue: string;
140
  datasourceOriginalIdProvenance: string;
141
  datasourceAggregated: boolean;
142
  datasourceComplianceDegreeValue: string;
143
  datasourceComplianceDegreeEncoding: string;
144
  numberOfObjects: number;
145
  maxSizeOfDatastructure: number;
146
  maxNumberOfDataStructures: number;
147
  registered: boolean;
148
  extraFields: { [index: string]: string };
149
  piwikInfo: PiwikInfo;
150
  environments: string[];
151
  registrationDate: Date;
152
  verified: boolean;
153
  dataCollectionTypes: DataCollectionType[];
154
  consentTermsOfUse: string;
155
  consentTermsOfUseDate: Date;
156
  fullTextDownload: string;
157
}
158

    
159
export class RepositorySnippet {
160
  id: string;
161
  officialname: string;
162
  englishname: string;
163
  websiteurl: string;
164
  typology: string;
165
  registeredby: string;
166
  organizations: Organization[];
167
  registrationdate: Date;
168
  piwikInfo: PiwikInfo;
169
  logoUrl: string;
170
  description: string;
171
  consentTermsOfUse: string;
172
  consentTermsOfUseDate: Date;
173
  fullTextDownload: string;
174
}
175

    
176
export class Organization {
177
  country: string;
178
  legalname: string;
179
  websiteurl: string;
180
  legalshortname: string;
181
  logourl: string;
182
}
183

    
184
export class RepositoryAccessProtocol {
185
    value: string;
186
    username: string;
187
    password: string;
188
    filter: string;
189
}
190

    
191
export class RepositoryBlackboard {
192
    lastrequest: string;
193
    lastresponse: string;
194
    messages: RepositoryBlackboardMessage[];
195
}
196

    
197
export class RepositoryBlackboardMessage {
198
    id: string;
199
    action: Action;
200
    actionStatus: ActionStatus;
201
    parameters: string[];
202
}
203

    
204
export class RepositoryComparator implements Comparator<Repository> {
205
}
206

    
207
export class RepositoryInterface implements Serializable, IsSerializable {
208
  desiredCompatibilityLevel: string;
209
  complianceName: string;
210
  upgradeToV3: string;
211
  deleteApi: boolean;
212
  accessSet: string;
213
  accessFormat: string;
214
  metadataIdentifierPath: string;
215
  lastCollectionDate: string;
216
  nextScheduledExecution: string;
217
  status: string;
218
  collectedFrom: string;
219
  id: string;
220
  typology: string;
221
  compliance: string;
222
  contentDescription: string;
223
  accessProtocol: string;
224
  baseUrl: string;
225
  active: boolean;
226
  removable: boolean;
227
  accessParams: { [index: string]: string };
228
  extraFields: { [index: string]: string };
229
  comments: string;
230
}
231

    
232
export class SearchCriteriaImpl implements SearchCriteria {
233
    startsWith: string;
234
    endsWith: string;
235
    contains: string;
236
}
237

    
238
export class RepositorySearchCriteria extends SearchCriteriaImpl implements SearchCriteria {
239
    haveDocuments: boolean;
240
    protocolType: string;
241
    adminInfo: string;
242
    officialName: string;
243
    registeredBy: string;
244
    country: string;
245
    verified: boolean;
246
}
247

    
248
export class SearchResult {
249
    query: string;
250
    locale: string;
251
    total: number;
252
    page: number;
253
    size: number;
254
    fields: string[];
255
    searchResults: string[];
256
    browseResults: string[];
257
}
258

    
259
export class SimilarDocument {
260
    id: string;
261
    score: number;
262
}
263

    
264
export class StoreInfo {
265
    serviceUrl: string;
266
    storeId: string;
267
}
268

    
269
export class StoreObjectInfo {
270
    storeInfo: StoreInfo;
271
    objectId: string;
272
}
273

    
274
export class SuggestiveResult {
275
    epr: EPR;
276
    alternativeTerm: string;
277
    autofollow: boolean;
278
}
279

    
280
export class CustomProperties implements IsSerializable {
281
    properties: { [index: string]: string };
282
}
283

    
284
export class JobForValidation implements IsSerializable {
285
    officialName: string;
286
    baseUrl: string;
287
    userEmail: string;
288
    validationSet: string;
289
    datasourceId: string;
290
    interfaceId: string;
291
    desiredCompatibilityLevel: string;
292
    activationId: string;
293
    repoType: string;
294
    interfaceIdOld: string;
295
    groupByXpath: string;
296
    metadataPrefix: string;
297
    records: number;
298
    registration: boolean;
299
    updateExisting: boolean;
300
    cris: boolean;
301
    crisReferentialChecks: boolean;
302
    selectedCrisEntities: string[];
303
    selectedContentRules: number[];
304
    selectedUsageRules: number[];
305
    adminEmails: string[];
306
}
307

    
308
export class JobResultEntry implements IsSerializable {
309
    name: string;
310
    description: string;
311
    successes: string;
312
    weight: number;
313
    errors: string[];
314
    ruleId: number;
315
    hasErrors: boolean;
316
    mandatory: boolean;
317
    type: string;
318
}
319

    
320
export class Rule implements IsSerializable {
321
    id: number;
322
    name: string;
323
    description: string;
324
    type: string;
325
    mandatory: boolean;
326
    weight: number;
327
    provider_information: string;
328
    job_type: string;
329
    entity_type: string;
330
    for_cris: boolean;
331
    configuration: CustomProperties;
332
}
333

    
334
export class RuleSet implements Serializable, IsSerializable {
335
    id: number;
336
    name: string;
337
    description: string;
338
    guidelinesAcronym: string;
339
    shortName: string;
340
    visibility: string[];
341
    contentRules: Rule[];
342
    usageRules: Rule[];
343
    contentRulesIds: number[];
344
    usageRulesIds: number[];
345
}
346

    
347
export class StoredJob extends JobForValidation implements IsSerializable {
348
    contentJobStatus: string;
349
    usageJobStatus: string;
350
    started: string;
351
    ended: string;
352
    duration: string;
353
    error: string;
354
    validationType: string;
355
    jobType: string;
356
    guidelinesShortName: string;
357
    validationStatus: string;
358
    recordsTested: number;
359
    id: number;
360
    contentJobScore: number;
361
    usageJobScore: number;
362
    rules: number[];
363
    resultEntries: JobResultEntry[];
364
    filteredScores: { [index: string]: number };
365
}
366

    
367
export class AdvQueryObject implements IsSerializable {
368
    datasource: string;
369
    topic: string;
370
    titles: string[];
371
    subjects: string[];
372
    authors: string[];
373
    dates: Range[];
374
    trust: Range;
375
    page: number;
376
}
377

    
378
export class BrowseEntry implements Comparable<BrowseEntry>, IsSerializable {
379
    value: string;
380
    size: number;
381
}
382

    
383
export class ConditionParams implements IsSerializable {
384
    value: string;
385
    otherValue: string;
386
}
387

    
388
export class Dataset implements IsSerializable {
389
    titles: string[];
390
    collectedFrom: string[];
391
    pids: Pid[];
392
    instances: Instance[];
393
}
394

    
395
export class DatasourcesBroker implements IsSerializable {
396
    datasourcesOfUser: Tuple<BrowseEntry, string>[];
397
    sharedDatasources: Tuple<BrowseEntry, string>[];
398
    datasourcesOfOthers: Tuple<BrowseEntry, string>[];
399
}
400

    
401
export class EventsPage implements IsSerializable {
402
    datasource: string;
403
    topic: string;
404
    currPage: number;
405
    totalPages: number;
406
    total: number;
407
    values: OpenAireEventPayload[];
408
}
409

    
410
export class ExternalReference implements IsSerializable {
411
    url: string;
412
    sitename: string;
413
    type: string;
414
    refidentifier: string;
415
}
416

    
417
export class Instance implements IsSerializable {
418
    url: string;
419
    license: string;
420
    hostedby: string;
421
    instancetype: string;
422
}
423

    
424
export class Journal implements IsSerializable {
425
    name: string;
426
    issn: string;
427
    eissn: string;
428
    lissn: string;
429
}
430

    
431
export class MapConditions implements IsSerializable {
432
    field: string;
433
    fieldType: MapValueType;
434
    operator: ConditionOperator;
435
    listParams: ConditionParams[];
436
}
437

    
438
export class OpenAireEventPayload implements IsSerializable {
439
    publication: Publication;
440
    highlight: Publication;
441
    provenance: Provenance;
442
    trust: number;
443
}
444

    
445
export class OpenaireSubscription implements IsSerializable {
446
    subscriber: string;
447
    frequency: NotificationFrequency;
448
    mode: NotificationMode;
449
    query: AdvQueryObject;
450
}
451

    
452
export class Pid implements IsSerializable {
453
    value: string;
454
    type: string;
455
}
456

    
457
export class Project implements IsSerializable {
458
    code: string;
459
    acronym: string;
460
    title: string;
461
    funder: string;
462
    fundingProgram: string;
463
    jurisdiction: string;
464
}
465

    
466
export class Provenance implements IsSerializable {
467
    repositoryName: string;
468
    url: string;
469
    id: string;
470
}
471

    
472
export class Publication implements IsSerializable {
473
    originalId: string;
474
    titles: string[];
475
    abstracts: string[];
476
    language: string;
477
    subjects: string[];
478
    creators: string[];
479
    publicationdate: string;
480
    publisher: string;
481
    embargoenddate: string;
482
    contributor: string[];
483
    journal: Journal;
484
    collectedFrom: string[];
485
    pids: Pid[];
486
    instances: Instance[];
487
    externalReferences: ExternalReference[];
488
    publications: Publication[];
489
    projects: Project[];
490
    datasets: Dataset[];
491
    softwares: Software[];
492
}
493

    
494
export class Range implements IsSerializable {
495
    min: string;
496
    max: string;
497
}
498

    
499
export class SimpleSubscriptionDesc implements IsSerializable {
500
    id: string;
501
    datasource: string;
502
    topic: string;
503
    count: number;
504
    creationDate: Date;
505
    lastNotificationDate: Date;
506
}
507

    
508
export class Software implements IsSerializable {
509
  name: string;
510
  description: string;
511
  landingPage: string;
512
  repository: string;
513
}
514

    
515
export class Subscription implements IsSerializable {
516
    subscriptionId: string;
517
    subscriber: string;
518
    topic: string;
519
    frequency: NotificationFrequency;
520
    mode: NotificationMode;
521
    creationDate: Date;
522
    lastNotificationDate: Date;
523
    conditions: string;
524
    conditionsAsList: MapConditions[];
525
}
526

    
527
export class LayoutField {
528
    name: string;
529
    xpath: string;
530
    type: string;
531
    indexable: boolean;
532
    result: boolean;
533
    stat: boolean;
534
    tokenizable: boolean;
535
}
536

    
537
export interface IsSerializable {
538
}
539

    
540
export interface Serializable {
541
}
542

    
543
export interface SearchCriteria {
544
}
545

    
546
export class EPR {
547
    epr: string;
548
    address: string;
549
    serviceName: string;
550
    endpointName: string;
551
    parameterNames: string[];
552
}
553

    
554
export class Tuple<K, V> implements IsSerializable {
555
    first: K;
556
    second: V;
557
}
558

    
559
export interface Comparator<T> {
560
}
561

    
562
export interface Comparable<T> {
563
}
564

    
565
export type ConditionOperator = "EXACT" | "MATCH_ANY" | "MATCH_ALL" | "RANGE";
566

    
567
export type MapValueType = "STRING" | "INTEGER" | "FLOAT" | "DATE" | "BOOLEAN" | "LIST_STRING" | "LIST_INTEGER" | "LIST_FLOAT" | "LIST_DATE" | "LIST_BOOLEAN";
568

    
569
export type NotificationFrequency = "never" | "realtime" | "daily" | "weekly" | "monthly";
570

    
571
export type NotificationMode = "MOCK" | "EMAIL";
572

    
573
export type Action = "CREATE" | "DELETE" | "UPDATE" | "MANAGE" | "RELEASE" | "CANCEL";
574

    
575
export type ActionStatus = "DONE" | "ONGOING" | "FAILED" | "WAITING" | "ASSIGNED";
576

    
577

    
578

    
579
export class Country {
580
  name: string;
581
  code: string;
582
}
583

    
584
export class Term implements IsSerializable {
585
  englishName: string;
586
  nativeName: string;
587
  encoding: string;
588
  code: string;
589
}
590

    
591
export class Timezone {
592
  name: string;
593
  offset: number;
594
}
595

    
596
export class InterfaceInformation implements IsSerializable {
597

    
598
  identified: boolean;
599
  sets: string[];
600
  adminEmails: string[];
601
}
602

    
603
export class JobsOfUser implements IsSerializable {
604
  totalJobs: number;
605
  totalJobsSuccessful: number;
606
  totalJobsFailed: number;
607
  totalJobsOngoing: number;
608

    
609
  jobs: StoredJob[];
610
}
611

    
612
export class MetricsNumbers implements IsSerializable {
613
  downloads: string[];
614
  pageviews: string;
615
  total_downloads: string;
616
  total_openaire_downloads: string;
617
  total_openaire_views: string;
618
  total_views: string;
619
  views: string[];
620
}
621

    
622
export class MetricsInfo implements IsSerializable {
623
  diagramsBaseURL: string;
624
  metricsNumbers: MetricsNumbers;
625
}
626

    
627
export class Typology {
628
  value: string;
629
  name: string;
630
}
631

    
632
export class AggregationDetails implements IsSerializable {
633
  aggregationStage: string;
634
  date: Date;
635
  numberOfRecords: number;
636
  collectionMode: string;
637
  indexedVersion: boolean;
638
}
639

    
640
export class Aggregations implements IsSerializable {
641
  aggregationHistory: AggregationDetails[];
642
  lastCollection: AggregationDetails[];
643
  lastTransformation: AggregationDetails[];
644
}
645

    
646
export class UserInfo implements  IsSerializable {
647
  sub: string;
648
  role: string[];
649
  name: string;
650
  email: string;
651
}
652

    
653
export class UsageStatsSummary implements IsSerializable {
654
  literature: string;
655
  aggregators: string;
656
  journal: string;
657
  software: string;
658
  lastYearUsagestats: { number: string; year: number; };
659
  usagestats: string;
660
  dataRepositories: string;
661
  datasets: string;
662
  publications: string;
663
}
664

    
665
export class RepositorySummaryInfo {
666
  id: string;
667
  repositoryName: string;
668
  logoURL: string;
669
  recordsCollected: number;
670
  lastIndexedVersion: Date;
671
  enrichmentEvents: number;
672
  totalViews: string;
673
  totalDownloads: string;
674
}
675

    
676
export class UsageSummary {
677
  metricsInfo: MetricsInfo;
678
  piwikInfo: PiwikInfo;
679
}
680

    
681
export class BrokerSummary {
682
  userSubs: Map<string, SimpleSubscriptionDesc[]>;
683
  topicsForDatasource: BrowseEntry[];
684
}
685

    
686
export class CollectionMonitorSummary {
687
  aggregationDetails: AggregationDetails[];
688
  lastIndexedVersion: AggregationDetails;
689
}
(6-6/11)