Project

General

Profile

1 15795 thanos.pap
namespace java eu.dnetlib.openaire.thrift
2
3 16130 thanos.pap
struct Author {
4
	1: string id,
5
	2: string lastName,
6
	3: string firstName
7
}
8
9 16156 thanos.pap
// alerts
10
struct AlertSubscription {
11
	1: string templateId,
12
	2: string notificationService,
13
	3: string queryId,
14
	4: string resultId,
15
	5: string alertMode,
16
	6: string subscriber
17
}
18
19
struct ResultPage {
20
	1: i32 limit,
21
	2: i32 offset,
22
	3: list<string> columns,
23
	4: list<list<string>> rows
24
}
25
26 19894 antonis.le
struct Claim {
27 27637 antonis.le
    1: string userEmail,
28
	2: string resultid,
29
	3: i64 date,
30
	4: string type,
31 33343 katerina.i
	5: string xml,
32
	6: string id
33 19894 antonis.le
}
34
35 27193 antonis.le
struct Project {
36
    1: string type,
37
    2: string projectId
38
}
39
40 41385 katerina.i
struct Project4Index {
41
    1: string projectid,
42
    2: string funder,
43
    3: string fundingStreamLevel0,
44
    4: string fundingStreamLevel1,
45
    5: string fundingStreamLevel2,
46
    6: string name,
47
    7: string code,
48
    8: string acronym,
49
    9: string type
50
}
51
52 16156 thanos.pap
// connector
53 15795 thanos.pap
service OpenAIREConnector {
54 16130 thanos.pap
	// claim
55 19894 antonis.le
	list<Claim> getClaimedPublications(1: string userEmail),
56 27224 antonis.le
57
	// from: date in milisecs
58
	// to: ditto
59
	list<Claim> getAllClaimedPublications(1: i64 from, 2: i64 to),
60 19378 antonis.le
61 28314 antonis.le
	string insertDocument (
62 28258 antonis.le
			1: string originalId,
63 19378 antonis.le
			2: string source,
64
			3: string title,
65
			4: string description,
66
			5: string access_mode,
67
			6: string embargoEndDate,
68
			7: list<Author> authors,
69
			8: string url,
70
			9: string dcSource,
71 28258 antonis.le
			10: string userEmail,
72
			11: list<string> subjects,
73
			12: string publicationDate,
74
			13: string publisher,
75
			14: string language,
76
			15: string category,
77 41385 katerina.i
			16: string doi,
78
			17: list<Project4Index> projects,
79
			18: list<string> concepts),
80 27193 antonis.le
81 28314 antonis.le
    void insertConcept (
82 28258 antonis.le
        1: string docId,
83
        2: string documentSource,
84
        3: string concept,
85 40632 katerina.i
        4: string userEmail,
86
        5: string doi),
87 28258 antonis.le
88 28314 antonis.le
    void insertProjectRelation (
89 28258 antonis.le
        1: string docId,
90
        2: string documentSource,
91
        3: Project project,
92
        4: string userEmail),
93
94 28314 antonis.le
    void insertResultRelation (
95
        1: string sourceResultId,
96
        2: string sourceResultType,
97
        3: string sourceResultSource,
98
        4: string targetResultId,
99
        5: string targetResultType,
100
        6: string userEmail
101 28258 antonis.le
    ),
102
103 27193 antonis.le
	void deleteClaim(1: string userEmail, 2:string resultId),
104 24008 antonis.le
105 16156 thanos.pap
	// alerts
106 25063 katerina.i
	list<AlertSubscription> getSubscriptions(
107
			1: string alertMode,
108
			2: string subscriber,
109
			3: i32 limit,
110
			4: i32 offset),
111
112 16156 thanos.pap
	void addSubscription(1: AlertSubscription subscription),
113 25063 katerina.i
114 16156 thanos.pap
	void removeSubscription(1: AlertSubscription subscription),
115 25063 katerina.i
116
	i32 countAlertResults(
117
			1: string notificationService,
118
			2: string queryId,
119
			3: i64 date,
120
			5: string resultId),
121
122
	ResultPage getAlertResults(
123
			1: string notificationService,
124
			2: string queryId,
125
			3: string resultId,
126
			4: i64 fromDate,
127
			5: i64 toDate,
128
			6: i32 limit,
129
			7: i32 offset),
130
131
	list<string> getContexts(),
132 27193 antonis.le
}