Skip to content
Snippets Groups Projects
Commit 1384ae5d authored by Martin Weise's avatar Martin Weise
Browse files

WIP

Former-commit-id: c7a97b9f
parent b0d236fd
No related branches found
No related tags found
1 merge request!42Fixed the query service tests
Showing
with 1312 additions and 44 deletions
package at.tuwien.api.zenodo.deposit;
import at.tuwien.api.zenodo.files.FileDto;
import at.tuwien.api.zenodo.files.FileResponseDto;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.*;
......@@ -40,7 +40,7 @@ public class DepositChangeResponseDto {
private CreatorDto[] contributors;
private List<FileDto> files;
private List<FileResponseDto> files;
private Long id;
......
package at.tuwien.api.zenodo.deposit;
import at.tuwien.api.zenodo.files.FileDto;
import at.tuwien.api.zenodo.files.FileResponseDto;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.*;
......@@ -46,7 +46,7 @@ public class DepositResponseDto {
private CreatorDto[] contributors;
private List<FileDto> files;
private List<FileResponseDto> files;
private Long id;
......
package at.tuwien.api.zenodo.deposit;
import lombok.*;
import org.springframework.core.io.ByteArrayResource;
import org.springframework.http.HttpEntity;
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FileBinaryRequestDto {
private HttpEntity<ByteArrayResource> file;
}
package at.tuwien.api.zenodo.deposit;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.*;
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FileRequestDto {
private String name;
}
......@@ -7,7 +7,7 @@ import lombok.*;
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FileDto {
public class FileResponseDto {
private String checksum;
......
package at.tuwien;
import at.tuwien.api.zenodo.deposit.*;
import at.tuwien.api.zenodo.files.FileDto;
import at.tuwien.api.zenodo.files.FileResponseDto;
import at.tuwien.api.zenodo.files.FileLinksDto;
import org.apache.commons.lang.RandomStringUtils;
import org.springframework.test.context.TestPropertySource;
......@@ -37,6 +37,11 @@ public abstract class BaseUnitTest {
public final static String CREATOR_2_AFFIL = "TU Graz";
public final static String CREATOR_2_ORCID = "0000-0002-2606-4059";
public final static String FILE_1_ID = "deadbeef-deafdeed";
public final static String FILE_1_NAME = "testdata-othername.csv";
public final static String FILE_1_CHECKSUM = "d393c7fa1240c18473133793f7901aaa";
public final static Long FILE_1_SIZE = 34614L;
public final static Long DEPOSIT_2_ID = 2L;
public final static String DEPOSIT_2_TITLE = "Test Document " + RandomStringUtils.randomAlphanumeric(10);
public final static String DEPOSIT_2_DESCRIPTION = "Test Description " + RandomStringUtils.randomAlphanumeric(100);
......@@ -46,12 +51,6 @@ public abstract class BaseUnitTest {
public final static String DEPOSIT_2_STATE = "draft";
public final static Boolean DEPOSIT_2_SUBMITTED = false;
public final static String FILE_1_CHECKSUM = "deadbeef";
public final static String FILE_1_NAME = "data.csv";
public final static String FILE_1_ID = "73d5674b-2bda-400c-844e-4eef309afe5e";
public final static Long FILE_1_SIZE = 3943498L;
public final static String FILE_1_LINKS_DOWNLOAD = "http://localhost:5500/file/" + FILE_1_ID + "/download";
public final static String FILE_1_LINKS_SELF = "http://localhost:5500/file/" + FILE_1_ID;
......@@ -82,7 +81,7 @@ public abstract class BaseUnitTest {
.self(FILE_1_LINKS_SELF)
.build();
public final static FileDto FILE_1 = FileDto.builder()
public final static FileResponseDto FILE_1 = FileResponseDto.builder()
.checksum(FILE_1_CHECKSUM)
.filename(FILE_1_NAME)
.id(FILE_1_ID)
......
package at.tuwien.service;
import at.tuwien.BaseUnitTest;
import at.tuwien.api.zenodo.deposit.DepositChangeRequestDto;
import at.tuwien.api.zenodo.deposit.DepositChangeResponseDto;
import at.tuwien.api.zenodo.deposit.FileRequestDto;
import at.tuwien.api.zenodo.files.FileResponseDto;
import at.tuwien.config.ReadyConfig;
import at.tuwien.exception.ZenodoApiException;
import at.tuwien.exception.ZenodoAuthenticationException;
import at.tuwien.exception.ZenodoNotFoundException;
import org.apache.commons.io.FileUtils;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mockito;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.http.HttpMethod;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.springframework.util.ResourceUtils;
import org.springframework.web.client.RestTemplate;
import java.io.FileNotFoundException;
import java.io.IOException;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.ArgumentMatchers.*;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.when;
@SpringBootTest
@ExtendWith(SpringExtension.class)
public class FileServiceIntegrationTest extends BaseUnitTest {
@MockBean
private ReadyConfig readyConfig;
@Autowired
private ZenodoFileService fileService;
@Autowired
private ZenodoMetadataService metadataService;
@Test
public void createResource_succeeds() throws IOException, ZenodoApiException, ZenodoNotFoundException, ZenodoAuthenticationException {
// final DepositChangeResponseDto deposit = metadataService.storeCitation();
final byte[] file = FileUtils.readFileToByteArray(ResourceUtils.getFile("classpath:testdata.csv"));
/* test */
final FileResponseDto response = fileService.createResource(1L, FILE_1_NAME, file);
assertEquals(FILE_1_NAME, response.getFilename());
assertEquals(FILE_1_CHECKSUM, response.getChecksum());
assertEquals(FILE_1_SIZE, response.getFilesize());
}
}
\ No newline at end of file
package at.tuwien.service;
import at.tuwien.BaseUnitTest;
import at.tuwien.api.zenodo.deposit.*;
import at.tuwien.api.zenodo.files.FileResponseDto;
import at.tuwien.config.ReadyConfig;
import at.tuwien.exception.ZenodoApiException;
import at.tuwien.exception.ZenodoAuthenticationException;
import at.tuwien.exception.ZenodoNotFoundException;
import org.apache.commons.io.FileUtils;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mockito;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpMethod;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.springframework.util.ResourceUtils;
import org.springframework.web.client.RestTemplate;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.List;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.anyLong;
import static org.mockito.Mockito.when;
@SpringBootTest
@ExtendWith(SpringExtension.class)
public class FileServiceUnitTest extends BaseUnitTest {
@MockBean
private ReadyConfig readyConfig;
@Autowired
private ZenodoFileService fileService;
@MockBean
private RestTemplate zenodoTemplate;
@Test
public void createResource_succeeds() throws IOException, ZenodoApiException, ZenodoNotFoundException,
ZenodoAuthenticationException {
final byte[] file = FileUtils.readFileToByteArray(ResourceUtils.getFile("classpath:testdata.csv"));
when(zenodoTemplate.exchange(anyString(), eq(HttpMethod.POST), Mockito.any(),
eq(FileResponseDto.class), anyLong(), anyString()))
.thenReturn(ResponseEntity.status(HttpStatus.OK)
.body(FILE_1));
/* test */
final FileResponseDto response = fileService.createResource(DEPOSIT_1_ID, FILE_1_NAME, file);
assertEquals(FILE_1_NAME, response.getFilename());
assertEquals(FILE_1_CHECKSUM, response.getChecksum());
assertEquals(FILE_1_SIZE, response.getFilesize());
}
@Test
public void createResource_notExists_fails() throws IOException {
final byte[] file = FileUtils.readFileToByteArray(ResourceUtils.getFile("classpath:testdata.csv"));
when(zenodoTemplate.exchange(anyString(), eq(HttpMethod.POST), Mockito.any(),
eq(FileResponseDto.class), anyLong(), anyString()))
.thenReturn(ResponseEntity.status(HttpStatus.BAD_REQUEST)
.build());
/* test */
assertThrows(ZenodoNotFoundException.class, () -> {
fileService.createResource(DEPOSIT_1_ID, FILE_1_NAME, file);
});
}
}
\ No newline at end of file
......@@ -17,4 +17,4 @@ spring.jpa.show-sql=false
fda.mapping.path: /tmp
fda.table.path: /tmp
zenodo.endpoint: https://sandbox.zenodo.org/
\ No newline at end of file
zenodo.endpoint: http://sandbox.zenodo.org/
\ No newline at end of file
#!/usr/bin/env python3
import socket
HOST = '' # Symbolic name meaning all available interfaces
PORT = 50000 # Arbitrary non-privileged port
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
print ('Connected by' + str(addr))
while 1:
data = conn.recv(1024)
if not data: break
print("===> recv " + str(data))
conn.close()
\ No newline at end of file
id;Date;Location;MinTemp;MaxTemp;Rainfall
1;2008-12-01;Albury;13.4;22.9;0.6
2;2008-12-02;Albury;7.4;25.1;0
3;2008-12-03;Albury;12.9;25.7;0
4;2008-12-04;Albury;9.2;28;0
5;2008-12-05;Albury;17.5;32.3;1
6;2008-12-06;Albury;14.6;29.7;0.2
7;2008-12-07;Albury;14.3;25;0
8;2008-12-08;Albury;7.7;26.7;0
9;2008-12-09;Albury;9.7;31.9;0
10;2008-12-10;Albury;13.1;30.1;1.4
11;2008-12-11;Albury;13.4;30.4;0
12;2008-12-12;Albury;15.9;21.7;2.2
13;2008-12-13;Albury;15.9;18.6;15.6
14;2008-12-14;Albury;12.6;21;3.6
15;2008-12-15;Albury;8.4;24.6;0
16;2008-12-16;Albury;9.8;27.7;NA
17;2008-12-17;Albury;14.1;20.9;0
18;2008-12-18;Albury;13.5;22.9;16.8
19;2008-12-19;Albury;11.2;22.5;10.6
20;2008-12-20;Albury;9.8;25.6;0
21;2008-12-21;Albury;11.5;29.3;0
22;2008-12-22;Albury;17.1;33;0
23;2008-12-23;Albury;20.5;31.8;0
24;2008-12-24;Albury;15.3;30.9;0
25;2008-12-25;Albury;12.6;32.4;0
26;2008-12-26;Albury;16.2;33.9;0
27;2008-12-27;Albury;16.9;33;0
28;2008-12-28;Albury;20.1;32.7;0
29;2008-12-29;Albury;19.7;27.2;0
30;2008-12-30;Albury;12.5;24.2;1.2
31;2008-12-31;Albury;12;24.4;0.8
32;2009-01-01;Albury;11.3;26.5;0
33;2009-01-02;Albury;9.6;23.9;0
34;2009-01-03;Albury;10.5;28.8;0
35;2009-01-04;Albury;12.3;34.6;0
36;2009-01-05;Albury;12.9;35.8;0
37;2009-01-06;Albury;13.7;37.9;0
38;2009-01-07;Albury;16.1;38.9;0
39;2009-01-08;Albury;14;28.3;0
40;2009-01-09;Albury;12.5;28.4;0
41;2009-01-10;Albury;17;30.8;0
42;2009-01-11;Albury;16.9;32;0
43;2009-01-12;Albury;17.3;34.7;0
44;2009-01-13;Albury;17.2;37.7;0
45;2009-01-14;Albury;17.4;43;0
46;2009-01-15;Albury;19.8;32.7;0
47;2009-01-16;Albury;14.9;26.7;0
48;2009-01-17;Albury;10.5;28.4;0
49;2009-01-18;Albury;11.3;32.2;0
50;2009-01-19;Albury;13.9;36.6;0
51;2009-01-20;Albury;18.6;39.9;0
52;2009-01-21;Albury;19.3;38.1;0.8
53;2009-01-22;Albury;24.4;34;0.6
54;2009-01-23;Albury;18.8;35.2;6.4
55;2009-01-24;Albury;20.8;30.6;0
56;2009-01-25;Albury;14;34.3;0
57;2009-01-26;Albury;15.7;38.4;0
58;2009-01-27;Albury;18.5;38.2;0
59;2009-01-28;Albury;20.4;40.7;0
60;2009-01-29;Albury;21.8;41.5;0
61;2009-01-30;Albury;22.3;42.9;0
62;2009-01-31;Albury;22;42.7;0
63;2009-02-01;Albury;28;43.1;0
64;2009-02-02;Albury;24.4;38.3;0.2
65;2009-02-03;Albury;21.5;37.7;0
66;2009-02-04;Albury;21.7;36.9;0
67;2009-02-05;Albury;21.5;41.2;0
68;2009-02-06;Albury;23.5;42.2;0
69;2009-02-07;Albury;22.3;44.8;0
70;2009-02-08;Albury;28.3;40.2;0
71;2009-02-09;Albury;18.4;31.2;0.4
72;2009-02-10;Albury;14.9;27.3;0
73;2009-02-11;Albury;13.5;26.7;0
74;2009-02-12;Albury;16.1;21.6;0
75;2009-02-13;Albury;14.6;29;3
76;2009-02-14;Albury;12.4;29.2;0
77;2009-02-15;Albury;13.3;31.3;0
78;2009-02-16;Albury;17.2;31.1;0
79;2009-02-17;Albury;12.5;28.8;0
80;2009-02-18;Albury;18;32;0
81;2009-02-19;Albury;16.2;34;0
82;2009-02-20;Albury;18.7;29.1;0
83;2009-02-21;Albury;13.7;31.7;0
84;2009-02-22;Albury;15.5;33.2;0
85;2009-02-23;Albury;14.3;34;0
86;2009-02-24;Albury;12.9;29.6;0
87;2009-02-25;Albury;8.9;31.9;0
88;2009-02-26;Albury;15;32.7;0
89;2009-02-27;Albury;15.4;32.6;0
90;2009-02-28;Albury;16;34.5;0
91;2009-03-01;Albury;12.8;30.3;0
92;2009-03-02;Albury;13.2;31.9;0
93;2009-03-03;Albury;18;31.1;0
94;2009-03-04;Albury;13.8;22.1;0.2
95;2009-03-05;Albury;11.5;22;0
96;2009-03-06;Albury;7.6;24;0
97;2009-03-07;Albury;8.3;27.9;0
98;2009-03-08;Albury;11;30.2;0
99;2009-03-09;Albury;13.8;31.8;0
100;2009-03-10;Albury;15.5;32;0
101;2009-03-11;Albury;18.4;30.5;1.2
102;2009-03-12;Albury;20.9;25.7;0
103;2009-03-13;Albury;17.1;25.8;5.8
104;2009-03-14;Albury;16.4;27;3
105;2009-03-15;Albury;10;19.7;11.6
106;2009-03-16;Albury;8.8;21.9;0
107;2009-03-17;Albury;8.4;25.3;0
108;2009-03-18;Albury;9.3;28;0
109;2009-03-19;Albury;11.3;30.1;0
110;2009-03-20;Albury;11.5;33.5;0
111;2009-03-21;Albury;13.8;33.6;0
112;2009-03-22;Albury;14.6;30;0
113;2009-03-23;Albury;14.4;31.6;0
114;2009-03-24;Albury;10.8;31.9;0
115;2009-03-25;Albury;15.4;22.3;0.4
116;2009-03-26;Albury;13.3;29.8;1.8
117;2009-03-27;Albury;10.1;27.6;0
118;2009-03-28;Albury;9.1;28.9;0
119;2009-03-29;Albury;10.4;31.2;0
120;2009-03-30;Albury;13.4;30.4;0
121;2009-03-31;Albury;12.3;29.9;0
122;2009-04-01;Albury;12.2;30.6;0
123;2009-04-02;Albury;14.3;32.1;0
124;2009-04-03;Albury;18.4;28.1;8.6
125;2009-04-04;Albury;10.7;21.4;12.6
126;2009-04-05;Albury;7.8;21.7;0
127;2009-04-06;Albury;8.1;21.4;0
128;2009-04-07;Albury;7.5;22.5;0
129;2009-04-08;Albury;8.2;24;0
130;2009-04-09;Albury;8.1;25.7;0
131;2009-04-10;Albury;11.6;26.7;0
132;2009-04-11;Albury;13;24.9;8.4
133;2009-04-12;Albury;13.5;24.2;6.2
134;2009-04-13;Albury;9.9;25.4;0
135;2009-04-14;Albury;12.2;25;0
136;2009-04-15;Albury;10.7;21.9;0
137;2009-04-16;Albury;3.5;20;0
138;2009-04-17;Albury;6.6;21.6;0
139;2009-04-18;Albury;7;23.4;0
140;2009-04-19;Albury;11.2;23.9;0
141;2009-04-20;Albury;7.4;22;0
142;2009-04-21;Albury;5.7;21.4;0
143;2009-04-22;Albury;6.2;22.7;0
144;2009-04-23;Albury;6;22.9;0
145;2009-04-24;Albury;10.6;16.2;0
146;2009-04-25;Albury;12.9;15.8;20
147;2009-04-26;Albury;8.6;12.9;21
148;2009-04-27;Albury;4.5;11.5;3.2
149;2009-04-28;Albury;7.6;14.5;4.8
150;2009-04-29;Albury;5.4;12.2;0
151;2009-04-30;Albury;2.1;16.5;0
152;2009-05-01;Albury;1.8;17;0
153;2009-05-02;Albury;7.2;19.2;0
154;2009-05-03;Albury;4.6;18.9;0
155;2009-05-04;Albury;4.2;19.1;0
156;2009-05-05;Albury;5.2;18.8;0
157;2009-05-06;Albury;4.1;19.3;0
158;2009-05-07;Albury;3.2;18.4;0
159;2009-05-08;Albury;4.3;19;0
160;2009-05-09;Albury;3.7;20.5;0
161;2009-05-10;Albury;5.4;19.5;0
162;2009-05-11;Albury;4.3;17.7;0
163;2009-05-12;Albury;3.6;18.5;0
164;2009-05-13;Albury;3.6;15.1;0
165;2009-05-14;Albury;6.9;16.3;0
166;2009-05-15;Albury;10.3;16.6;0
167;2009-05-16;Albury;12.4;16.4;1.8
168;2009-05-17;Albury;3;15.6;0
169;2009-05-18;Albury;2.6;19.7;0
170;2009-05-19;Albury;3.7;19.1;0
171;2009-05-20;Albury;5.1;18.6;0
172;2009-05-21;Albury;4.4;19.8;0
173;2009-05-22;Albury;4.7;19.8;0
174;2009-05-23;Albury;6.2;22.9;0
175;2009-05-24;Albury;6.7;21.1;0
176;2009-05-25;Albury;9.3;20.3;0
177;2009-05-26;Albury;11.6;18.1;4.2
178;2009-05-27;Albury;8;16.2;0.8
179;2009-05-28;Albury;2.6;15.7;0
180;2009-05-29;Albury;2.2;16.5;0
181;2009-05-30;Albury;2.2;16.8;0
182;2009-05-31;Albury;1.7;17.1;0
183;2009-06-01;Albury;8;14.3;1.2
184;2009-06-02;Albury;8.4;13.4;1.4
185;2009-06-03;Albury;10.6;14.3;4.8
186;2009-06-04;Albury;8.9;17.4;8
187;2009-06-05;Albury;2.8;16.1;0
188;2009-06-06;Albury;1.7;10.5;0.2
189;2009-06-07;Albury;4.7;11.6;14.4
190;2009-06-08;Albury;9;12;4.6
191;2009-06-09;Albury;6.3;8.8;2
192;2009-06-10;Albury;3;10.5;5.6
193;2009-06-11;Albury;-2;9.6;0
194;2009-06-12;Albury;-1.3;8.2;0
195;2009-06-13;Albury;1.8;12.4;0
196;2009-06-14;Albury;2;15.8;0
197;2009-06-15;Albury;0.5;14.9;0.4
198;2009-06-16;Albury;1.2;17.7;0
199;2009-06-17;Albury;0.6;15.9;0
200;2009-06-18;Albury;0.5;14.7;0
201;2009-06-19;Albury;0.5;15.3;0
202;2009-06-20;Albury;0.9;17.3;0
203;2009-06-21;Albury;7;17;1.6
204;2009-06-22;Albury;5;14.9;5.6
205;2009-06-23;Albury;3.9;15.5;0
206;2009-06-24;Albury;7.7;14.1;6
207;2009-06-25;Albury;4.7;12.2;0
208;2009-06-26;Albury;6.9;13.7;4.4
209;2009-06-27;Albury;8.4;11.9;0
210;2009-06-28;Albury;9.3;12.3;5.4
211;2009-06-29;Albury;8.2;15.7;3.6
212;2009-06-30;Albury;9.1;16.1;2
213;2009-07-01;Albury;8.3;13.3;8.4
214;2009-07-02;Albury;8.8;11.6;5
215;2009-07-03;Albury;7.6;12;7.8
216;2009-07-04;Albury;5.7;13.2;0
217;2009-07-05;Albury;3.4;12.4;0
218;2009-07-06;Albury;0;12.1;0
219;2009-07-07;Albury;-1.5;12.5;0
220;2009-07-08;Albury;-1.7;13.8;0
221;2009-07-09;Albury;-0.4;15;0.2
222;2009-07-10;Albury;0.1;13.5;0
223;2009-07-11;Albury;4.8;13.3;0.6
224;2009-07-12;Albury;8.1;16.5;0.6
225;2009-07-13;Albury;5.9;13.1;1
226;2009-07-14;Albury;6.9;11;6.8
227;2009-07-15;Albury;2.9;12.6;1.8
228;2009-07-16;Albury;-0.6;13.4;0
229;2009-07-17;Albury;-0.3;14.4;0.2
230;2009-07-18;Albury;-1;12;0
231;2009-07-19;Albury;3.2;14.1;0.6
232;2009-07-20;Albury;3.6;16.5;0.2
233;2009-07-21;Albury;0.8;17.7;0
234;2009-07-22;Albury;6.6;12.3;0
235;2009-07-23;Albury;6;13.5;9.8
236;2009-07-24;Albury;-0.1;12.9;0
237;2009-07-25;Albury;-0.3;12.2;0
238;2009-07-26;Albury;2.1;9.8;0
239;2009-07-27;Albury;1.3;8.8;0
240;2009-07-28;Albury;4.2;12.7;3.8
241;2009-07-29;Albury;8.3;13.2;2.4
242;2009-07-30;Albury;3.3;12.1;0.2
243;2009-07-31;Albury;6.5;14.5;5.2
244;2009-08-01;Albury;7.4;13.9;0.2
245;2009-08-02;Albury;7.5;14.1;0.8
246;2009-08-03;Albury;8.3;13.8;0.8
247;2009-08-04;Albury;3.2;14.7;0
248;2009-08-05;Albury;5.7;13.8;5.4
249;2009-08-06;Albury;5.1;17.1;0.4
250;2009-08-07;Albury;8;13.9;0.8
251;2009-08-08;Albury;-0.8;12.9;4.2
252;2009-08-09;Albury;-1;12.2;0
253;2009-08-10;Albury;1.9;14.8;0.2
254;2009-08-11;Albury;5.9;17.7;0.4
255;2009-08-12;Albury;6.9;14.3;4.8
256;2009-08-13;Albury;7.7;11.6;0.2
257;2009-08-14;Albury;6.8;15.2;1.2
258;2009-08-15;Albury;2.7;17.5;0.2
259;2009-08-16;Albury;5.1;15.5;1.6
260;2009-08-17;Albury;4.2;13.6;3.2
261;2009-08-18;Albury;0.6;15.6;0
262;2009-08-19;Albury;1.6;16.4;0
263;2009-08-20;Albury;5.5;18.4;0
264;2009-08-21;Albury;7.3;14.8;1
265;2009-08-22;Albury;0.2;14.1;6.6
266;2009-08-23;Albury;5.8;18.9;3.8
267;2009-08-24;Albury;8.9;17.1;1.2
268;2009-08-25;Albury;7.1;12.8;2
269;2009-08-26;Albury;4.2;14.4;3.6
270;2009-08-27;Albury;1.1;16.7;0.4
271;2009-08-28;Albury;1.1;18.6;0
272;2009-08-29;Albury;7.2;17.9;4.2
273;2009-08-30;Albury;6.3;11.1;13.4
274;2009-08-31;Albury;6.7;14.2;1.4
275;2009-09-01;Albury;5.1;14.2;3
276;2009-09-02;Albury;1;16.8;0
277;2009-09-03;Albury;6.1;20.7;0
278;2009-09-04;Albury;6.3;16.9;1.4
279;2009-09-05;Albury;2.1;15;0
280;2009-09-06;Albury;1.6;16.6;0
281;2009-09-07;Albury;8.3;17.6;0
282;2009-09-08;Albury;5.7;16.5;0
283;2009-09-09;Albury;7.5;14.3;0
284;2009-09-10;Albury;2.6;NA;0
285;2009-09-11;Albury;NA;18.8;NA
286;2009-09-12;Albury;6.5;24.7;0
287;2009-09-13;Albury;13.2;25.1;0
288;2009-09-14;Albury;4.3;17.8;0
289;2009-09-15;Albury;1.6;17.2;0
290;2009-09-16;Albury;2.8;21.1;0
291;2009-09-17;Albury;6.3;19;0
292;2009-09-18;Albury;7.4;20.4;10.2
293;2009-09-19;Albury;5.4;20.6;0
294;2009-09-20;Albury;8;18.9;0.4
295;2009-09-21;Albury;3.7;19;0.2
296;2009-09-22;Albury;11.5;20.2;8.4
297;2009-09-23;Albury;9.3;16.8;28.8
298;2009-09-24;Albury;8.2;18.2;1.4
299;2009-09-25;Albury;5.3;20.6;0
300;2009-09-26;Albury;6.8;12.2;6
301;2009-09-27;Albury;4.5;12.9;1.6
302;2009-09-28;Albury;5.5;17.9;0
303;2009-09-29;Albury;1.7;17;0
304;2009-09-30;Albury;4;21.4;0
305;2009-10-01;Albury;8.9;21.1;0
306;2009-10-02;Albury;11.7;22;0
307;2009-10-03;Albury;8.5;13.5;3.2
308;2009-10-04;Albury;9.6;16.2;1.8
309;2009-10-05;Albury;8.3;19.7;0.2
310;2009-10-06;Albury;5.2;16.2;0
311;2009-10-07;Albury;3.8;15.9;3.6
312;2009-10-08;Albury;1.2;16.3;0
313;2009-10-09;Albury;3.2;18.2;0
314;2009-10-10;Albury;4.6;19;0
315;2009-10-11;Albury;6.4;18.7;0
316;2009-10-12;Albury;5.8;23.3;0
317;2009-10-13;Albury;6.6;17.7;2
318;2009-10-14;Albury;9.5;15.1;7
319;2009-10-15;Albury;9.7;15.7;1.4
320;2009-10-16;Albury;4.1;16.6;6.8
321;2009-10-17;Albury;4.6;19.2;0
322;2009-10-18;Albury;5.1;20.3;0
323;2009-10-19;Albury;5.1;22.7;0
324;2009-10-20;Albury;6.9;26.6;0
325;2009-10-21;Albury;8.8;27.1;0
326;2009-10-22;Albury;9.1;27.1;0
327;2009-10-23;Albury;8.1;23.9;0
328;2009-10-24;Albury;7.4;25.4;0
329;2009-10-25;Albury;10.6;23.1;0
330;2009-10-26;Albury;10.8;22;0
331;2009-10-27;Albury;5.9;24.1;0
332;2009-10-28;Albury;11.3;26.8;0
333;2009-10-29;Albury;14.5;26.9;0
334;2009-10-30;Albury;13.7;29.1;0
335;2009-10-31;Albury;15.6;30.8;0
336;2009-11-01;Albury;17.8;34;0
337;2009-11-02;Albury;18.7;32.4;0
338;2009-11-03;Albury;18.7;24.3;0
339;2009-11-04;Albury;10;23.2;0
340;2009-11-05;Albury;6.6;25.3;0
341;2009-11-06;Albury;10.8;27.9;0
342;2009-11-07;Albury;11.3;29.8;0
343;2009-11-08;Albury;13.5;31.8;0
344;2009-11-09;Albury;15.4;33.4;0
345;2009-11-10;Albury;15.9;35.2;0
346;2009-11-11;Albury;17.1;36;0
347;2009-11-12;Albury;16.7;35.1;0
348;2009-11-13;Albury;18.1;32.8;0
349;2009-11-14;Albury;13.4;35.4;0
350;2009-11-15;Albury;17.2;36.3;0
351;2009-11-16;Albury;15.3;35.1;0
352;2009-11-17;Albury;12.1;30.5;0
353;2009-11-18;Albury;11.4;33.5;0
354;2009-11-19;Albury;18.6;39.7;0
355;2009-11-20;Albury;15.3;38.2;0
356;2009-11-21;Albury;19.3;21;10.6
357;2009-11-22;Albury;18.3;28.3;25.8
358;2009-11-23;Albury;11.9;23.6;0.4
359;2009-11-24;Albury;12.8;25.8;0
360;2009-11-25;Albury;17.2;32.9;0
361;2009-11-26;Albury;21;34.5;0
362;2009-11-27;Albury;15.9;26.2;10.2
363;2009-11-28;Albury;17.1;26.4;0
364;2009-11-29;Albury;12.8;22.3;9.4
365;2009-11-30;Albury;13.2;23.9;2.4
366;2009-12-01;Albury;12.3;23.6;0
367;2009-12-02;Albury;10.6;27;0
368;2009-12-03;Albury;11.4;31.5;0
369;2009-12-04;Albury;12.3;27.5;0
370;2009-12-05;Albury;10.7;26.7;0
371;2009-12-06;Albury;11.1;30.7;0
372;2009-12-07;Albury;13.4;31.9;0
373;2009-12-08;Albury;18.2;24.9;0
374;2009-12-09;Albury;9.2;25.4;1.2
375;2009-12-10;Albury;14.2;27.4;0
376;2009-12-11;Albury;9.2;22.6;1
377;2009-12-12;Albury;9;26.5;0
378;2009-12-13;Albury;11.8;29.6;0
379;2009-12-14;Albury;13.6;32;0
380;2009-12-15;Albury;13.1;34.7;0
381;2009-12-16;Albury;14.6;38.6;0
382;2009-12-17;Albury;14.5;40.3;0
383;2009-12-18;Albury;12.2;26.4;3
384;2009-12-19;Albury;11.1;29.2;0
385;2009-12-20;Albury;12;31.3;0
386;2009-12-21;Albury;12.7;33.7;0
387;2009-12-22;Albury;15.1;36.6;0
388;2009-12-23;Albury;18.1;38.2;0
389;2009-12-24;Albury;22.9;34.6;0
390;2009-12-25;Albury;18.8;28.3;9.8
391;2009-12-26;Albury;17.1;31.3;0
392;2009-12-27;Albury;17.6;27.3;0
393;2009-12-28;Albury;17.8;35.9;0
394;2009-12-29;Albury;18.7;35.9;0
395;2009-12-30;Albury;19.8;36.8;0
396;2009-12-31;Albury;21.1;33.2;0
397;2010-01-01;Albury;19.4;31.9;5
398;2010-01-02;Albury;18.6;29.1;12.4
399;2010-01-03;Albury;12.2;29.7;0
400;2010-01-04;Albury;14.8;32.8;0
401;2010-01-05;Albury;15;35.8;0
402;2010-01-06;Albury;16.3;33.8;0
403;2010-01-07;Albury;15;33;0
404;2010-01-08;Albury;17.4;36.4;0
405;2010-01-09;Albury;19.6;39.8;0
406;2010-01-10;Albury;20.6;42.2;0
407;2010-01-11;Albury;21;42.2;0
408;2010-01-12;Albury;24.5;42.4;0.2
409;2010-01-13;Albury;22.6;28.4;0.4
410;2010-01-14;Albury;15.7;31.7;3
411;2010-01-15;Albury;17.2;36.3;0
412;2010-01-16;Albury;21.8;36.6;0
413;2010-01-17;Albury;16.8;25.6;0
414;2010-01-18;Albury;10.5;22.6;0
415;2010-01-19;Albury;8.7;25.2;0
416;2010-01-20;Albury;11;32.9;0
417;2010-01-21;Albury;15.4;37.3;0
418;2010-01-22;Albury;19.2;41.8;0
419;2010-01-23;Albury;24.7;35.4;0
420;2010-01-24;Albury;14.4;33.7;0
421;2010-01-25;Albury;14.3;35.8;0
422;2010-01-26;Albury;15.1;35.9;0
423;2010-01-27;Albury;17.7;36.4;0
424;2010-01-28;Albury;15.2;34.4;0
425;2010-01-29;Albury;16;35.2;0
426;2010-01-30;Albury;18.9;36.5;0
427;2010-01-31;Albury;21.7;36.3;0
428;2010-02-01;Albury;21;38.2;0
429;2010-02-02;Albury;17.8;34.3;8.6
430;2010-02-03;Albury;17.9;35.6;0
431;2010-02-04;Albury;23.5;32;0
432;2010-02-05;Albury;19.2;26.1;52.2
433;2010-02-06;Albury;19.5;30.3;5.6
434;2010-02-07;Albury;20.3;33.9;0
435;2010-02-08;Albury;23;34;0
436;2010-02-09;Albury;22.1;35.1;0
437;2010-02-10;Albury;21.7;35.6;NA
438;2010-02-11;Albury;21.5;35;0
439;2010-02-12;Albury;22.5;29.1;NA
440;2010-02-13;Albury;20.8;27.1;0
441;2010-02-14;Albury;20.5;30.3;0
442;2010-02-15;Albury;17.8;26.8;0
443;2010-02-16;Albury;17.6;29;0
444;2010-02-17;Albury;15.5;30.6;0
445;2010-02-18;Albury;NA;31.2;NA
446;2010-02-19;Albury;16.4;30.3;0
447;2010-02-20;Albury;15.7;31.8;0
448;2010-02-21;Albury;19.6;34.7;0.6
449;2010-02-22;Albury;20.2;26.4;3.6
450;2010-02-23;Albury;12.5;26.1;0.2
451;2010-02-24;Albury;12.8;28.5;0
452;2010-02-25;Albury;15;31;0
453;2010-02-26;Albury;17.2;NA;0
454;2010-02-27;Albury;NA;26.3;NA
455;2010-02-28;Albury;18.2;29.3;1.4
456;2010-03-01;Albury;14.4;NA;0
457;2010-03-02;Albury;11.2;28.5;NA
458;2010-03-03;Albury;12.5;31.2;0
459;2010-03-04;Albury;15.1;NA;0
460;2010-03-05;Albury;NA;22.3;0
461;2010-03-06;Albury;18.8;30.3;20.6
462;2010-03-07;Albury;18.3;22.9;5.8
463;2010-03-08;Albury;18.1;25.5;66
464;2010-03-09;Albury;15.7;22.4;6.2
465;2010-03-10;Albury;8.8;NA;0
466;2010-03-11;Albury;12.3;24.4;NA
467;2010-03-12;Albury;10.6;25;0
468;2010-03-13;Albury;11.5;25.7;0
469;2010-03-14;Albury;12.2;26.3;0
470;2010-03-15;Albury;13.2;26.6;0
471;2010-03-16;Albury;12.5;28.6;0
472;2010-03-17;Albury;13.3;29.6;0
473;2010-03-18;Albury;15.1;30.4;0
474;2010-03-19;Albury;14.9;31.4;0
475;2010-03-20;Albury;16.7;31.9;0
476;2010-03-21;Albury;16.8;25.6;0
477;2010-03-22;Albury;9.1;25.3;0
478;2010-03-23;Albury;8.3;27;0
479;2010-03-24;Albury;10.5;28.8;0
480;2010-03-25;Albury;11.6;29.6;0
481;2010-03-26;Albury;12.6;30;0
482;2010-03-27;Albury;15.6;30.2;0
483;2010-03-28;Albury;17.2;28.7;0
484;2010-03-29;Albury;18.2;26.3;11
485;2010-03-30;Albury;16.5;26.9;0.4
486;2010-03-31;Albury;13.4;26.1;0
487;2010-04-01;Albury;11.6;25.8;0
488;2010-04-02;Albury;10;25.1;0
489;2010-04-03;Albury;12.4;24.8;0
490;2010-04-04;Albury;12.5;24.8;0
491;2010-04-05;Albury;10.3;25.3;0
492;2010-04-06;Albury;10.6;24.7;0
493;2010-04-07;Albury;15.7;23.4;3
494;2010-04-08;Albury;13.5;23.1;3.2
495;2010-04-09;Albury;10.1;21.9;0
496;2010-04-10;Albury;14.1;18.6;0.2
497;2010-04-11;Albury;14.2;18.7;7
498;2010-04-12;Albury;5.6;17.4;0
499;2010-04-13;Albury;4.6;19.9;0
500;2010-04-14;Albury;5.1;21.9;0
501;2010-04-15;Albury;6.1;23.5;0
502;2010-04-16;Albury;7.7;24.7;0
503;2010-04-17;Albury;8.5;25.4;0
504;2010-04-18;Albury;10.1;25.1;0
505;2010-04-19;Albury;11.2;25.9;0
506;2010-04-20;Albury;11.8;25.2;0
507;2010-04-21;Albury;12.3;27.5;0
508;2010-04-22;Albury;11.4;27.3;0
509;2010-04-23;Albury;11.3;29;0
510;2010-04-24;Albury;15.4;19.8;3.6
511;2010-04-25;Albury;10.8;18.5;17
512;2010-04-26;Albury;5.1;17.9;0
513;2010-04-27;Albury;7.1;16.1;0
514;2010-04-28;Albury;9.7;17.3;1.6
515;2010-04-29;Albury;10.5;17.7;0.4
516;2010-04-30;Albury;5.6;19.1;0
517;2010-05-01;Albury;5.9;21.1;0.2
518;2010-05-02;Albury;4.8;20.7;0
519;2010-05-03;Albury;6.8;23;0
520;2010-05-04;Albury;8;25.3;0.2
521;2010-05-05;Albury;8.9;14.5;3
522;2010-05-06;Albury;7.1;15.3;0
523;2010-05-07;Albury;5.7;17.5;0
524;2010-05-08;Albury;9.6;19.3;0
525;2010-05-09;Albury;5.7;19.5;0
526;2010-05-10;Albury;5;19.8;0
527;2010-05-11;Albury;3;15.6;0
528;2010-05-12;Albury;1.3;14.9;0
529;2010-05-13;Albury;1;17.1;0
530;2010-05-14;Albury;3.1;17.7;0.2
531;2010-05-15;Albury;2.2;18.4;0
532;2010-05-16;Albury;1.7;17.5;0
533;2010-05-17;Albury;4.5;17;0
534;2010-05-18;Albury;1.6;19.7;0
535;2010-05-19;Albury;1.4;18.5;0
536;2010-05-20;Albury;2.1;16.5;0
537;2010-05-21;Albury;1.7;17.9;0
538;2010-05-22;Albury;1.1;17.1;0
539;2010-05-23;Albury;0.9;18.1;0
540;2010-05-24;Albury;5.2;16.3;0
541;2010-05-25;Albury;10.2;14.9;10.4
542;2010-05-26;Albury;8.4;19;13.4
543;2010-05-27;Albury;5.7;16.6;0.2
544;2010-05-28;Albury;6.4;17;0
545;2010-05-29;Albury;9.4;15;28
546;2010-05-30;Albury;8.8;20.2;5.8
547;2010-05-31;Albury;10.7;19.1;0
548;2010-06-01;Albury;4.2;16.6;0
549;2010-06-02;Albury;4.3;17.7;0
550;2010-06-03;Albury;3.4;17.7;0
551;2010-06-04;Albury;3.1;18.4;0
552;2010-06-05;Albury;1.7;10.2;0
553;2010-06-06;Albury;5;15.8;0
554;2010-06-07;Albury;0.4;14;0
555;2010-06-08;Albury;3.1;12.2;0
556;2010-06-09;Albury;5.3;8.4;0
557;2010-06-10;Albury;4.9;12.9;2.4
558;2010-06-11;Albury;7.2;13.2;0
559;2010-06-12;Albury;0;13.3;0
560;2010-06-13;Albury;-1;13.1;0
561;2010-06-14;Albury;-2;13.2;0
562;2010-06-15;Albury;-0.3;12.8;0
563;2010-06-16;Albury;1.5;15.5;0
564;2010-06-17;Albury;7.4;16.2;11.6
565;2010-06-18;Albury;3;12.2;2.2
566;2010-06-19;Albury;6.9;15.2;1.8
567;2010-06-20;Albury;3.6;13.1;0
568;2010-06-21;Albury;5;12.5;0.4
569;2010-06-22;Albury;3;14.8;0
570;2010-06-23;Albury;3.5;16.5;0
571;2010-06-24;Albury;3.4;17;0
572;2010-06-25;Albury;7;16.1;0
573;2010-06-26;Albury;6.2;12.1;10.2
574;2010-06-27;Albury;0.6;11.9;0.2
575;2010-06-28;Albury;-0.6;8.3;0
576;2010-06-29;Albury;2.3;9.4;0
577;2010-06-30;Albury;5.1;9.8;0.2
578;2010-07-01;Albury;3.2;11.9;1.2
579;2010-07-02;Albury;0.2;10.9;0.2
580;2010-07-03;Albury;1;10.3;0
581;2010-07-04;Albury;1.5;10.8;0
582;2010-07-05;Albury;1.8;12.1;0.2
583;2010-07-06;Albury;2.3;13.9;5.6
584;2010-07-07;Albury;1.5;13.5;0
585;2010-07-08;Albury;2.1;14.8;0.4
586;2010-07-09;Albury;0;14.6;0
587;2010-07-10;Albury;1.5;16.1;0
588;2010-07-11;Albury;5;15.4;13.4
589;2010-07-12;Albury;3.5;15.3;0.2
590;2010-07-13;Albury;3.5;16.3;0
591;2010-07-14;Albury;6.2;10;21.4
592;2010-07-15;Albury;3.4;12.2;11
593;2010-07-16;Albury;0.6;13.1;0
594;2010-07-17;Albury;-0.4;11.5;0
595;2010-07-18;Albury;0.7;12.8;0
596;2010-07-19;Albury;5;13.5;1.6
597;2010-07-20;Albury;0.5;11.6;0.2
598;2010-07-21;Albury;0.6;12.9;0
599;2010-07-22;Albury;-0.5;13.8;0
600;2010-07-23;Albury;0.1;15.7;0
601;2010-07-24;Albury;1;14.6;0
602;2010-07-25;Albury;2.5;14.3;0.2
603;2010-07-26;Albury;1.9;14.9;0.2
604;2010-07-27;Albury;-1.2;15;0.2
605;2010-07-28;Albury;2.1;12.6;0
606;2010-07-29;Albury;5.8;14.8;6.2
607;2010-07-30;Albury;8.9;14.9;0
608;2010-07-31;Albury;7.5;12.3;2.2
609;2010-08-01;Albury;7.5;10.1;4.2
610;2010-08-02;Albury;5.4;14.7;18.6
611;2010-08-03;Albury;1.2;15.7;0
612;2010-08-04;Albury;1.2;9.6;0
613;2010-08-05;Albury;NA;11.8;NA
614;2010-08-06;Albury;0.7;12.6;0.2
615;2010-08-07;Albury;-0.6;13.1;0.2
616;2010-08-08;Albury;-1.3;12.6;0
617;2010-08-09;Albury;0.3;15.5;0
618;2010-08-10;Albury;4.4;16;7.2
619;2010-08-11;Albury;7.2;10.4;8.2
620;2010-08-12;Albury;4.5;14.9;10.8
621;2010-08-13;Albury;1.6;15;0
622;2010-08-14;Albury;3.2;13;0
623;2010-08-15;Albury;7.2;12.1;1.8
624;2010-08-16;Albury;6.4;11.8;10.2
625;2010-08-17;Albury;-1;12.1;3.8
626;2010-08-18;Albury;1.3;11.8;0.2
627;2010-08-19;Albury;5;15.1;15.4
628;2010-08-20;Albury;4.5;11.7;2
629;2010-08-21;Albury;6.3;12.9;0
630;2010-08-22;Albury;2.1;15.3;0.2
631;2010-08-23;Albury;4.1;12.8;0.2
632;2010-08-24;Albury;6.4;13.3;1.8
633;2010-08-25;Albury;4.2;10.7;1.8
634;2010-08-26;Albury;5.4;11.8;9.6
635;2010-08-27;Albury;6.8;13.4;4
636;2010-08-28;Albury;0.9;14.4;0
637;2010-08-29;Albury;1.9;15.2;0
638;2010-08-30;Albury;2.3;15.4;0
639;2010-08-31;Albury;2.9;14.2;0
640;2010-09-01;Albury;7.1;15.1;0
641;2010-09-02;Albury;10;16.8;0.8
642;2010-09-03;Albury;7.1;17.6;0
643;2010-09-04;Albury;10.1;17.7;21.8
644;2010-09-05;Albury;9.8;14.2;20.8
645;2010-09-06;Albury;6.8;12.8;2.4
646;2010-09-07;Albury;2.3;15.1;1.2
647;2010-09-08;Albury;1.7;15.9;0
648;2010-09-09;Albury;7.2;14.7;0
649;2010-09-10;Albury;8.1;14;24.8
650;2010-09-11;Albury;2.6;15.9;3.2
651;2010-09-12;Albury;4.5;16.3;0
652;2010-09-13;Albury;6;18.7;0.4
653;2010-09-14;Albury;5.8;19;0
654;2010-09-15;Albury;5.5;13.6;0
655;2010-09-16;Albury;7.5;13.4;0
656;2010-09-17;Albury;4.3;14.3;0.2
657;2010-09-18;Albury;3.3;13.9;0
658;2010-09-19;Albury;2.4;16.4;0
659;2010-09-20;Albury;2.8;18.7;0
660;2010-09-21;Albury;5;19.6;0
661;2010-09-22;Albury;8.6;20.1;0
662;2010-09-23;Albury;5.7;19.9;0
663;2010-09-24;Albury;3.7;19.1;0
664;2010-09-25;Albury;5.6;19.7;0
665;2010-09-26;Albury;5.4;20.6;0
666;2010-09-27;Albury;6.5;20;0
667;2010-09-28;Albury;5.4;14.6;0
668;2010-09-29;Albury;3.7;14.3;0
669;2010-09-30;Albury;-0.1;14.6;0
670;2010-10-01;Albury;4.1;17.4;0
671;2010-10-02;Albury;4.8;21.1;0
672;2010-10-03;Albury;7.4;23;0
673;2010-10-04;Albury;8.2;23.2;0
674;2010-10-05;Albury;10.1;25.9;0
675;2010-10-06;Albury;11.1;24.9;0
676;2010-10-07;Albury;7.3;15.9;10
677;2010-10-08;Albury;4.2;19;0
678;2010-10-09;Albury;5.4;20.8;0
679;2010-10-10;Albury;8.2;23.2;0
680;2010-10-11;Albury;7.6;23.7;0
681;2010-10-12;Albury;14.5;19.9;0.8
682;2010-10-13;Albury;14.7;18;11.4
683;2010-10-14;Albury;12.7;19.1;19
684;2010-10-15;Albury;13.8;18.6;22.2
685;2010-10-16;Albury;4.8;12.8;32.8
686;2010-10-17;Albury;6.3;15.4;0
687;2010-10-18;Albury;9.2;17.4;0
688;2010-10-19;Albury;4.8;19;0
689;2010-10-20;Albury;5.7;21.8;0
690;2010-10-21;Albury;8;23.3;0
691;2010-10-22;Albury;9.5;25.8;0
692;2010-10-23;Albury;14.8;19;0.4
693;2010-10-24;Albury;8.2;22.2;2.4
694;2010-10-25;Albury;10.9;22.2;0
695;2010-10-26;Albury;8.8;23.5;0
696;2010-10-27;Albury;10.2;22.3;1.6
697;2010-10-28;Albury;8.8;23.6;0
698;2010-10-29;Albury;10.3;25.6;0
699;2010-10-30;Albury;16;19.5;3.4
700;2010-10-31;Albury;13.8;18.7;50.8
701;2010-11-01;Albury;10.2;18.9;1.2
702;2010-11-02;Albury;7.1;20.3;0
703;2010-11-03;Albury;10.7;18;0
704;2010-11-04;Albury;10.1;18.8;0
705;2010-11-05;Albury;11.1;21;0
706;2010-11-06;Albury;7.5;22.9;0
707;2010-11-07;Albury;9.3;24.5;0
708;2010-11-08;Albury;14.7;24.7;2.2
709;2010-11-09;Albury;11.6;27.7;0
710;2010-11-10;Albury;15.5;29;0
711;2010-11-11;Albury;15.2;30.5;0.6
712;2010-11-12;Albury;17.5;31.3;0
713;2010-11-13;Albury;21.1;26.9;0
714;2010-11-14;Albury;19.2;22.6;52.6
715;2010-11-15;Albury;15.9;23.1;2.4
716;2010-11-16;Albury;11.4;20.8;0
717;2010-11-17;Albury;8.8;23.3;0
718;2010-11-18;Albury;9.1;24.8;0
719;2010-11-19;Albury;12.1;25.5;0
720;2010-11-20;Albury;12;27.3;0
721;2010-11-21;Albury;12.7;29.7;0
722;2010-11-22;Albury;14.7;29.9;0
723;2010-11-23;Albury;14.8;29.4;0
724;2010-11-24;Albury;18.1;30.1;0
725;2010-11-25;Albury;18.9;27.6;0
726;2010-11-26;Albury;17.9;24.2;4
727;2010-11-27;Albury;14.8;27.6;19.2
728;2010-11-28;Albury;17.8;21.4;18.8
729;2010-11-29;Albury;13.6;22.6;14.8
730;2010-11-30;Albury;14.4;23.3;1.6
731;2010-12-01;Albury;16.7;23.9;12
732;2010-12-02;Albury;16.1;26.6;0.6
733;2010-12-03;Albury;15.7;27.3;18.4
734;2010-12-04;Albury;17.3;29.9;1.2
735;2010-12-05;Albury;16.6;31.6;0
736;2010-12-06;Albury;18.9;30.4;0
737;2010-12-07;Albury;21.3;29.8;0
738;2010-12-08;Albury;20.3;29.7;3.2
739;2010-12-09;Albury;18;26.7;25.6
740;2010-12-10;Albury;16.7;22.5;0
741;2010-12-11;Albury;11.2;24.3;0
742;2010-12-12;Albury;15;22.2;0
743;2010-12-13;Albury;10.5;26.2;0
744;2010-12-14;Albury;13.7;28.8;0
745;2010-12-15;Albury;16.1;31.1;0
746;2010-12-16;Albury;15.1;25.6;0.4
747;2010-12-17;Albury;10.3;25.9;0
748;2010-12-18;Albury;14;20.8;1
749;2010-12-19;Albury;10.4;18;3
750;2010-12-20;Albury;8.6;20.5;6.2
751;2010-12-21;Albury;9.9;21.2;1.6
752;2010-12-22;Albury;9.4;25.9;0
753;2010-12-23;Albury;12.3;29.2;0
754;2010-12-24;Albury;13.9;30.8;0
755;2010-12-25;Albury;19.3;29.1;0
756;2010-12-26;Albury;17.5;30;1
757;2010-12-27;Albury;11.3;22.2;0
758;2010-12-28;Albury;9.1;26.7;0
759;2010-12-29;Albury;13.5;31;0
760;2010-12-30;Albury;14.8;34;0
761;2010-12-31;Albury;15.7;38.1;0
762;2011-01-01;Albury;23.2;35.8;0
763;2011-01-02;Albury;20.1;31.1;0.6
764;2011-01-03;Albury;13.6;29.4;0
765;2011-01-04;Albury;13.9;29.2;0
766;2011-01-05;Albury;16;28.9;0
767;2011-01-06;Albury;16.5;31.6;0
768;2011-01-07;Albury;16.1;30.7;0
769;2011-01-08;Albury;17.8;32;0
770;2011-01-09;Albury;20.1;33;0
771;2011-01-10;Albury;20.1;32;35
772;2011-01-11;Albury;21.6;26.4;1.4
773;2011-01-12;Albury;21.5;28.9;5
774;2011-01-13;Albury;22.1;30.6;14.2
775;2011-01-14;Albury;24;25.5;2.4
776;2011-01-15;Albury;19.9;31.4;13.8
777;2011-01-16;Albury;18.5;33.7;0
778;2011-01-17;Albury;19.8;26.9;0
779;2011-01-18;Albury;12.9;27.2;0
780;2011-01-19;Albury;12.9;29.3;0
781;2011-01-20;Albury;16.1;31.9;0
782;2011-01-21;Albury;17.8;32.5;0
783;2011-01-22;Albury;19.8;34.6;0
784;2011-01-23;Albury;20.7;31.4;0
785;2011-01-24;Albury;19.8;30.6;0
786;2011-01-25;Albury;14.9;32;0
787;2011-01-26;Albury;21.1;34.4;0
788;2011-01-27;Albury;14.3;31.6;0
789;2011-01-28;Albury;12.6;32.3;0
790;2011-01-29;Albury;14.5;32;0
791;2011-01-30;Albury;16.7;35.4;0
792;2011-01-31;Albury;19.9;38.2;0
793;2011-02-01;Albury;20.5;39.8;0
794;2011-02-02;Albury;21.9;33.7;0
795;2011-02-03;Albury;21.9;36;3.4
796;2011-02-04;Albury;22.5;28.2;2.6
797;2011-02-05;Albury;20.4;23;99.2
798;2011-02-06;Albury;14.7;21.5;51
799;2011-02-07;Albury;10.8;25.5;0
800;2011-02-08;Albury;13.4;27.3;0
801;2011-02-09;Albury;15;29.4;0
802;2011-02-10;Albury;17;29.7;0
803;2011-02-11;Albury;19.8;24.8;39.8
804;2011-02-12;Albury;18.7;28.5;28.2
805;2011-02-13;Albury;15.1;28.6;0
806;2011-02-14;Albury;14.5;29.2;0
807;2011-02-15;Albury;16.4;28;0
808;2011-02-16;Albury;18.9;22;0.2
809;2011-02-17;Albury;18.9;29.2;5.8
810;2011-02-18;Albury;19.3;30.7;0
811;2011-02-19;Albury;21.7;29;12.2
812;2011-02-20;Albury;16.7;25.7;12.8
813;2011-02-21;Albury;10.1;22.5;0
814;2011-02-22;Albury;12.3;25.2;0
815;2011-02-23;Albury;12.6;28;0.2
816;2011-02-24;Albury;13.9;29.2;0
817;2011-02-25;Albury;16.5;29.8;0
818;2011-02-26;Albury;15.6;30.9;0
819;2011-02-27;Albury;19.6;24.8;0.2
820;2011-02-28;Albury;17.9;30;11.8
821;2011-03-01;Albury;16;22.8;0
822;2011-03-02;Albury;8.8;23.4;0
823;2011-03-03;Albury;8.4;22.3;0
824;2011-03-04;Albury;8.6;22.1;0
825;2011-03-05;Albury;11.5;25;0
826;2011-03-06;Albury;9.6;25.3;0
827;2011-03-07;Albury;10.6;26.6;0
828;2011-03-08;Albury;11.4;28.7;0
829;2011-03-09;Albury;16.8;27;0
830;2011-03-10;Albury;18.7;20.8;13.4
831;2011-03-11;Albury;16.8;27;10.2
832;2011-03-12;Albury;17.2;28.2;0.6
833;2011-03-13;Albury;19.6;29.3;0.6
834;2011-03-14;Albury;18.2;26.9;19.8
835;2011-03-15;Albury;16.3;28.4;0.2
836;2011-03-16;Albury;17.1;28.2;0.4
837;2011-03-17;Albury;12.1;25.9;0.2
838;2011-03-18;Albury;12.8;26.3;0
839;2011-03-19;Albury;13.3;27.4;0
840;2011-03-20;Albury;13.9;28.1;0
841;2011-03-21;Albury;18.2;25.9;0
842;2011-03-22;Albury;18.6;26.8;0
843;2011-03-23;Albury;16.3;20.1;0
844;2011-03-24;Albury;13.9;22;8
845;2011-03-25;Albury;13.3;22.1;0
846;2011-03-26;Albury;9.6;24.2;0
847;2011-03-27;Albury;9.8;23;0
848;2011-03-28;Albury;10.2;24.7;0
849;2011-03-29;Albury;11.5;25.7;0
850;2011-03-30;Albury;12.3;25.8;0
851;2011-03-31;Albury;7.2;22.1;0.2
852;2011-05-01;Albury;8.7;20.4;0
853;2011-05-02;Albury;12.3;22.3;0
854;2011-05-03;Albury;9;21.9;0
855;2011-05-04;Albury;6.7;19;0.6
856;2011-05-05;Albury;4.4;18.1;0.2
857;2011-05-06;Albury;2.8;16.8;0
858;2011-05-07;Albury;3.4;15.9;0
859;2011-05-08;Albury;2.1;16.8;0
860;2011-05-09;Albury;3.8;16.1;0
861;2011-05-10;Albury;1.1;15.2;0
862;2011-05-11;Albury;3;11;3.6
863;2011-05-12;Albury;0.2;10.1;0.4
864;2011-05-13;Albury;3.8;14.1;5
865;2011-05-14;Albury;3.8;14.3;1.8
866;2011-05-15;Albury;-0.7;13.7;0
867;2011-05-16;Albury;0.8;11.2;0
868;2011-05-17;Albury;0.5;15.8;0
869;2011-05-18;Albury;2.3;17.9;0
870;2011-05-19;Albury;2.7;16;0
871;2011-05-20;Albury;4.5;18.6;0
872;2011-05-21;Albury;3.3;20.5;0
873;2011-05-22;Albury;5.8;22;0
874;2011-05-23;Albury;10.2;15;17.4
875;2011-05-24;Albury;8.9;15.6;3.6
876;2011-05-25;Albury;3.1;14.7;0
877;2011-05-26;Albury;1.3;14.9;0
878;2011-05-27;Albury;1.9;13.8;0
879;2011-05-28;Albury;2.6;13.9;0
880;2011-05-29;Albury;2.5;14.8;0
881;2011-05-30;Albury;3.6;15.9;0
882;2011-05-31;Albury;2.8;19.4;0
883;2011-06-01;Albury;3.1;19.8;0
884;2011-06-02;Albury;2.9;17.6;0
885;2011-06-03;Albury;4.3;18.3;0
886;2011-06-04;Albury;8.5;14.8;8.8
887;2011-06-05;Albury;2.2;12;0
888;2011-06-06;Albury;4.9;12.8;2
889;2011-06-07;Albury;-0.5;9.8;0
890;2011-06-08;Albury;1.5;10.2;2.6
891;2011-06-09;Albury;2.9;14.6;0
892;2011-06-10;Albury;-1.1;14;0
893;2011-06-11;Albury;-1.4;13.9;0
894;2011-06-12;Albury;1;16.1;0.2
895;2011-06-13;Albury;-0.3;15.9;0
896;2011-06-14;Albury;1.7;16.7;0
897;2011-06-15;Albury;0.5;16.9;0
898;2011-06-16;Albury;1;16.1;0
899;2011-06-17;Albury;3;12.6;1
900;2011-06-18;Albury;5.7;12.5;0.2
901;2011-06-19;Albury;3.3;11.8;0
902;2011-06-20;Albury;7.6;14.6;3.6
903;2011-06-21;Albury;6.6;11.6;10.6
904;2011-06-22;Albury;5.9;11.1;0.6
905;2011-06-23;Albury;6.2;14.2;3.4
906;2011-06-24;Albury;2.9;13.1;0
907;2011-06-25;Albury;5.5;15.5;0.4
908;2011-06-26;Albury;3.2;15.7;0
909;2011-06-27;Albury;0.9;16.4;0
910;2011-06-28;Albury;-0.2;15.2;0
911;2011-06-29;Albury;0.9;16.6;0
912;2011-06-30;Albury;0.3;15.2;0
913;2011-07-01;Albury;0.3;14.1;0
914;2011-07-02;Albury;0.2;15.2;0
915;2011-07-03;Albury;2.9;14.8;0
916;2011-07-04;Albury;6.3;14.8;15.4
917;2011-07-05;Albury;6.9;11.2;3.8
918;2011-07-06;Albury;7;10.8;1.2
919;2011-07-07;Albury;6.8;11.2;4.4
920;2011-07-08;Albury;-0.5;8.3;0
921;2011-07-09;Albury;4.3;9.2;4.2
922;2011-07-10;Albury;6.4;11;0
923;2011-07-11;Albury;4.7;11.8;6.6
924;2011-07-12;Albury;5.7;10.5;0
925;2011-07-13;Albury;7.1;9.8;0
926;2011-07-14;Albury;-0.3;12.6;4
927;2011-07-15;Albury;-1.6;12.1;0
928;2011-07-16;Albury;0.2;14.1;0
929;2011-07-17;Albury;5.3;11.1;0
930;2011-07-18;Albury;8.4;11;8.8
931;2011-07-19;Albury;0.4;14.5;1.8
932;2011-07-20;Albury;0.3;16.7;0.2
933;2011-07-21;Albury;3.5;17.2;0
934;2011-07-22;Albury;6.9;15.6;0
935;2011-07-23;Albury;0.1;14.6;0
936;2011-07-24;Albury;1.6;9.3;0.2
937;2011-07-25;Albury;5.5;13.2;16.2
938;2011-07-26;Albury;4.1;14.1;2.2
939;2011-07-27;Albury;0.5;14.5;0
940;2011-07-28;Albury;0.2;13.1;0
941;2011-07-29;Albury;-1.4;14.7;0
942;2011-07-30;Albury;0.6;16.1;0.2
943;2011-07-31;Albury;4.9;14.7;1
944;2011-08-01;Albury;3.4;19;0
945;2011-08-02;Albury;6.5;20.6;0
946;2011-08-03;Albury;3.9;21.5;0.2
947;2011-08-04;Albury;7.1;22.9;0
948;2011-08-05;Albury;5.6;20.7;0
949;2011-08-06;Albury;9.9;12.9;14.6
950;2011-08-07;Albury;5.3;11.1;4.2
951;2011-08-08;Albury;7.1;12.3;8.2
952;2011-08-09;Albury;3.1;10.1;1.2
953;2011-08-10;Albury;6.3;10.9;3.6
954;2011-08-11;Albury;3.4;16.8;2.8
955;2011-08-12;Albury;1.6;16.3;0
956;2011-08-13;Albury;0.7;13.4;0
957;2011-08-14;Albury;4.3;17.3;0
958;2011-08-15;Albury;3.9;13.8;1.2
959;2011-08-16;Albury;9;19.4;0.2
960;2011-08-17;Albury;7.1;12.6;5.6
961;2011-08-18;Albury;7.4;10.8;30.8
962;2011-08-19;Albury;6.9;19.3;0.8
963;2011-08-20;Albury;3.2;17.3;0
964;2011-08-21;Albury;2.1;18;0
965;2011-08-22;Albury;1.8;17.7;0
966;2011-08-23;Albury;2.5;16.9;0
967;2011-08-24;Albury;2.4;17.5;0
968;2011-08-25;Albury;2.5;20.7;0
969;2011-08-26;Albury;1.9;16.6;0
970;2011-08-27;Albury;0.8;16.8;0
971;2011-08-28;Albury;0.4;16.2;0
972;2011-08-29;Albury;1.4;15.9;0
973;2011-08-30;Albury;0.6;15.7;0
974;2011-08-31;Albury;0.4;15.8;0
975;2011-09-01;Albury;2.6;18.3;0
976;2011-09-02;Albury;2.8;20.4;0
977;2011-09-03;Albury;2.6;19.6;0
978;2011-09-04;Albury;6.5;16.8;0
979;2011-09-05;Albury;4.8;21.4;3.2
980;2011-09-06;Albury;10.8;18.8;5
981;2011-09-07;Albury;-0.1;14.4;1
982;2011-09-08;Albury;0.4;15.9;0
983;2011-09-09;Albury;2.7;14;0
984;2011-09-10;Albury;4;NA;0.2
985;2011-09-11;Albury;NA;NA;NA
986;2011-09-12;Albury;NA;NA;NA
987;2011-09-13;Albury;NA;15.8;NA
988;2011-09-14;Albury;0.9;20.8;NA
989;2011-09-15;Albury;1.7;17.2;0
990;2011-09-16;Albury;4.4;20.8;0
991;2011-09-17;Albury;3.7;21.7;0
992;2011-09-18;Albury;5.5;23.9;0
993;2011-09-19;Albury;5.3;26.7;0
994;2011-09-20;Albury;10.1;13.6;1
995;2011-09-21;Albury;1.7;18.2;3.6
996;2011-09-22;Albury;4.4;22.1;0
997;2011-09-23;Albury;10;18.4;0
998;2011-09-24;Albury;1.9;18.3;0
999;2011-09-25;Albury;8.6;19.8;1
1000;2011-09-26;Albury;3.1;19.6;0
\ No newline at end of file
package at.tuwien.config;
import at.tuwien.exception.ZenodoAuthenticationException;
import at.tuwien.utils.ZenodoTemplateInterceptor;
import com.fasterxml.jackson.databind.DeserializationFeature;
import at.tuwien.utils.ApiTemplateInterceptor;
import at.tuwien.utils.UploadTemplateInterceptor;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import lombok.Getter;
......@@ -49,13 +48,23 @@ public class ZenodoConfig {
.registerModule(new Jdk8Module());
}
@Bean
public RestTemplate zenodo() {
@Bean("apiTemplate")
public RestTemplate apiTemplate() {
final UriBuilderFactory factory = new DefaultUriBuilderFactory(zenodoEndpoint);
final RestTemplate template = new RestTemplateBuilder()
.uriTemplateHandler(factory)
.build();
template.setInterceptors(List.of(new ApiTemplateInterceptor()));
return template;
}
@Bean("uploadTemplate")
public RestTemplate uploadTemplate() {
final UriBuilderFactory factory = new DefaultUriBuilderFactory(zenodoEndpoint);
final RestTemplate template = new RestTemplateBuilder()
.uriTemplateHandler(factory)
.build();
template.setInterceptors(List.of(new ZenodoTemplateInterceptor()));
template.setInterceptors(List.of(new UploadTemplateInterceptor()));
return template;
}
......
package at.tuwien.mapper;
import at.tuwien.api.zenodo.deposit.FileBinaryRequestDto;
import at.tuwien.api.zenodo.deposit.FileRequestDto;
import org.mapstruct.Mapper;
import org.springframework.core.io.ByteArrayResource;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import java.util.List;
import java.util.Map;
@Mapper(componentModel = "spring")
public interface ZenodoMapper {
default HttpEntity<MultiValueMap<String, Object>> resourceToHttpEntity(String name, byte[] resource) {
final HttpHeaders headers = new HttpHeaders();
headers.setAccept(List.of(MediaType.APPLICATION_JSON));
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
final HttpHeaders parts = new HttpHeaders();
parts.setContentType(MediaType.TEXT_PLAIN);
final ByteArrayResource byteArrayResource = new ByteArrayResource(resource) {
@Override
public String getFilename() {
return name;
}
};
MultiValueMap<String, Object> body = new LinkedMultiValueMap<>();
body.add("file", new HttpEntity<>(byteArrayResource, parts));
body.add("data", new HttpEntity<>(name, parts));
return new HttpEntity<>(body, headers);
}
}
package at.tuwien.service;
import at.tuwien.api.zenodo.files.FileResponseDto;
import at.tuwien.exception.ZenodoApiException;
import at.tuwien.exception.ZenodoAuthenticationException;
import at.tuwien.exception.ZenodoNotFoundException;
import org.springframework.stereotype.Service;
@Service
public interface FileService {
FileResponseDto createResource(Long id, String name, byte[] resource)
throws ZenodoAuthenticationException, ZenodoApiException, ZenodoNotFoundException;
}
package at.tuwien.service;
import at.tuwien.api.zenodo.files.FileResponseDto;
import at.tuwien.config.ZenodoConfig;
import at.tuwien.exception.ZenodoApiException;
import at.tuwien.exception.ZenodoAuthenticationException;
import at.tuwien.exception.ZenodoNotFoundException;
import at.tuwien.mapper.ZenodoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.*;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
@Service
public class ZenodoFileService implements FileService {
private final RestTemplate apiTemplate;
private final RestTemplate uploadTemplate;
private final ZenodoConfig zenodoConfig;
private final ZenodoMapper zenodoMapper;
@Autowired
public ZenodoFileService(RestTemplate apiTemplate, RestTemplate uploadTemplate, ZenodoConfig zenodoConfig,
ZenodoMapper zenodoMapper) {
this.apiTemplate = apiTemplate;
this.uploadTemplate = uploadTemplate;
this.zenodoConfig = zenodoConfig;
this.zenodoMapper = zenodoMapper;
}
@Override
public FileResponseDto createResource(Long id, String name, byte[] resource)
throws ZenodoAuthenticationException, ZenodoApiException, ZenodoNotFoundException {
final ResponseEntity<FileResponseDto> response = uploadTemplate.exchange("/api/deposit/depositions/{deposit_id}/files?access_token={token}",
HttpMethod.POST, zenodoMapper.resourceToHttpEntity(name, resource), FileResponseDto.class, id,
zenodoConfig.getApiKey());
if (response.getStatusCode().equals(HttpStatus.UNAUTHORIZED)) {
throw new ZenodoAuthenticationException("Token is missing or invalid.");
}
if (response.getStatusCode().equals(HttpStatus.BAD_REQUEST)) {
throw new ZenodoNotFoundException("Did not find the deposit with this id");
}
if (response.getBody() == null) {
throw new ZenodoApiException("Endpoint returned null body");
}
return response.getBody();
}
}
......@@ -16,18 +16,18 @@ import java.util.List;
@Service
public class ZenodoMetadataService implements MetadataService {
private final RestTemplate zenodoRestTemplate;
private final RestTemplate apiTemplate;
private final ZenodoConfig zenodoConfig;
@Autowired
public ZenodoMetadataService(RestTemplate zenodoRestTemplate, ZenodoConfig zenodoConfig) {
this.zenodoRestTemplate = zenodoRestTemplate;
public ZenodoMetadataService(RestTemplate apiTemplate, ZenodoConfig zenodoConfig) {
this.apiTemplate = apiTemplate;
this.zenodoConfig = zenodoConfig;
}
@Override
public List<DepositResponseDto> listCitations() throws ZenodoAuthenticationException, ZenodoApiException {
final ResponseEntity<DepositResponseDto[]> response = zenodoRestTemplate.exchange("/api/deposit/depositions?access_token={token}",
final ResponseEntity<DepositResponseDto[]> response = apiTemplate.exchange("/api/deposit/depositions?access_token={token}",
HttpMethod.GET, null, DepositResponseDto[].class, zenodoConfig.getApiKey());
if (response.getStatusCode().equals(HttpStatus.UNAUTHORIZED)) {
throw new ZenodoAuthenticationException("Token is missing or invalid.");
......@@ -40,7 +40,7 @@ public class ZenodoMetadataService implements MetadataService {
@Override
public DepositChangeResponseDto storeCitation() throws ZenodoAuthenticationException, ZenodoApiException {
final ResponseEntity<DepositChangeResponseDto> response = zenodoRestTemplate.exchange("/api/deposit/depositions?access_token={token}",
final ResponseEntity<DepositChangeResponseDto> response = apiTemplate.exchange("/api/deposit/depositions?access_token={token}",
HttpMethod.POST, new HttpEntity<>("{}"), DepositChangeResponseDto.class, zenodoConfig.getApiKey());
if (response.getStatusCode().equals(HttpStatus.UNAUTHORIZED)) {
throw new ZenodoAuthenticationException("Token is missing or invalid.");
......@@ -57,7 +57,7 @@ public class ZenodoMetadataService implements MetadataService {
@Override
public DepositChangeResponseDto updateCitation(Long id, DepositChangeRequestDto data) throws ZenodoAuthenticationException,
ZenodoApiException, ZenodoNotFoundException {
final ResponseEntity<DepositChangeResponseDto> response = zenodoRestTemplate.exchange("/api/deposit/depositions/{deposit_id}?access_token={token}",
final ResponseEntity<DepositChangeResponseDto> response = apiTemplate.exchange("/api/deposit/depositions/{deposit_id}?access_token={token}",
HttpMethod.PUT, new HttpEntity<>(data), DepositChangeResponseDto.class, id, zenodoConfig.getApiKey());
if (response.getStatusCode().equals(HttpStatus.UNAUTHORIZED)) {
throw new ZenodoAuthenticationException("Token is missing or invalid.");
......@@ -76,7 +76,7 @@ public class ZenodoMetadataService implements MetadataService {
@Override
public void deleteCitation(Long id) throws ZenodoAuthenticationException, ZenodoApiException {
final ResponseEntity<String> response = zenodoRestTemplate.exchange("/api/deposit/depositions/{deposit_id}?access_token={token}",
final ResponseEntity<String> response = apiTemplate.exchange("/api/deposit/depositions/{deposit_id}?access_token={token}",
HttpMethod.DELETE, null, String.class, id, zenodoConfig.getApiKey());
if (response.getStatusCode().equals(HttpStatus.UNAUTHORIZED)) {
throw new ZenodoAuthenticationException("Token is missing or invalid.");
......
......@@ -9,7 +9,7 @@ import org.springframework.stereotype.Service;
import java.io.IOException;
@Service
public class ZenodoTemplateInterceptor implements ClientHttpRequestInterceptor {
public class ApiTemplateInterceptor implements ClientHttpRequestInterceptor {
@Override
public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution)
......
package at.tuwien.utils;
import org.springframework.http.HttpRequest;
import org.springframework.http.client.ClientHttpRequestExecution;
import org.springframework.http.client.ClientHttpRequestInterceptor;
import org.springframework.http.client.ClientHttpResponse;
import org.springframework.stereotype.Service;
import java.io.IOException;
@Service
public class UploadTemplateInterceptor implements ClientHttpRequestInterceptor {
@Override
public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution)
throws IOException {
request.getHeaders().set("Content-Type", "multipart/form-data");
request.getHeaders().set("Accept", "application/json");
return execution.execute(request, body);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment