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 16156 thanos.pap
// connector
41 15795 thanos.pap
service OpenAIREConnector {
42 16130 thanos.pap
	// claim
43 19894 antonis.le
	list<Claim> getClaimedPublications(1: string userEmail),
44 27224 antonis.le
45
	// from: date in milisecs
46
	// to: ditto
47
	list<Claim> getAllClaimedPublications(1: i64 from, 2: i64 to),
48 19378 antonis.le
49 28314 antonis.le
	string insertDocument (
50 28258 antonis.le
			1: string originalId,
51 19378 antonis.le
			2: string source,
52
			3: string title,
53
			4: string description,
54
			5: string access_mode,
55
			6: string embargoEndDate,
56
			7: list<Author> authors,
57
			8: string url,
58
			9: string dcSource,
59 28258 antonis.le
			10: string userEmail,
60
			11: list<string> subjects,
61
			12: string publicationDate,
62
			13: string publisher,
63
			14: string language,
64
			15: string category,
65
			16: string doi),
66 27193 antonis.le
67 28314 antonis.le
    void insertConcept (
68 28258 antonis.le
        1: string docId,
69
        2: string documentSource,
70
        3: string concept,
71 40632 katerina.i
        4: string userEmail,
72
        5: string doi),
73 28258 antonis.le
74 28314 antonis.le
    void insertProjectRelation (
75 28258 antonis.le
        1: string docId,
76
        2: string documentSource,
77
        3: Project project,
78
        4: string userEmail),
79
80 28314 antonis.le
    void insertResultRelation (
81
        1: string sourceResultId,
82
        2: string sourceResultType,
83
        3: string sourceResultSource,
84
        4: string targetResultId,
85
        5: string targetResultType,
86
        6: string userEmail
87 28258 antonis.le
    ),
88
89 27193 antonis.le
	void deleteClaim(1: string userEmail, 2:string resultId),
90 24008 antonis.le
91 16156 thanos.pap
	// alerts
92 25063 katerina.i
	list<AlertSubscription> getSubscriptions(
93
			1: string alertMode,
94
			2: string subscriber,
95
			3: i32 limit,
96
			4: i32 offset),
97
98 16156 thanos.pap
	void addSubscription(1: AlertSubscription subscription),
99 25063 katerina.i
100 16156 thanos.pap
	void removeSubscription(1: AlertSubscription subscription),
101 25063 katerina.i
102
	i32 countAlertResults(
103
			1: string notificationService,
104
			2: string queryId,
105
			3: i64 date,
106
			5: string resultId),
107
108
	ResultPage getAlertResults(
109
			1: string notificationService,
110
			2: string queryId,
111
			3: string resultId,
112
			4: i64 fromDate,
113
			5: i64 toDate,
114
			6: i32 limit,
115
			7: i32 offset),
116
117
	list<string> getContexts(),
118 27193 antonis.le
}