Project

General

Profile

1
package eu.dnetlib.parthenos.registry;
2

    
3
import java.io.BufferedOutputStream;
4
import java.io.ByteArrayOutputStream;
5
import java.io.IOException;
6

    
7
import com.fasterxml.jackson.core.JsonEncoding;
8
import com.fasterxml.jackson.core.JsonFactory;
9
import com.fasterxml.jackson.core.JsonGenerator;
10
import org.springframework.stereotype.Component;
11

    
12
/**
13
 * Created by Alessia Bardi on 02/10/2017.
14
 *
15
 * @author Alessia Bardi
16
 */
17
@Component
18
public class RelWriter {
19

    
20
	protected String writeRelationship(final JsonFactory jsonFactory, final String relType, final String sourceUUID, final String sourceType, final String targetUUID, final String targetType)
21
			throws IOException {
22
		final ByteArrayOutputStream out = new ByteArrayOutputStream();
23
		BufferedOutputStream bos = new BufferedOutputStream(out);
24
		JsonGenerator jg = jsonFactory.createGenerator(bos, JsonEncoding.UTF8);
25
		jg.writeStartObject();
26
		jg.writeStringField("@class", relType);
27
		jg.writeObjectFieldStart("source");
28
		jg.writeObjectFieldStart("header");
29
		jg.writeStringField("uuid", sourceUUID);
30
		jg.writeEndObject();
31
		jg.writeStringField("@class", sourceType);
32
		jg.writeEndObject();
33
		jg.writeObjectFieldStart("target");
34
		jg.writeObjectFieldStart("header");
35
		jg.writeStringField("uuid", targetUUID);
36
		jg.writeEndObject();
37
		jg.writeStringField("@class", targetType);
38
		jg.writeEndObject();
39
		jg.close();
40
		return out.toString("UTF-8");
41
	}
42
}
(6-6/6)