cleanup/polishing

This commit is contained in:
Ilayaperumal Gopinathan
2020-07-26 18:57:01 +05:30
parent 34473b025b
commit 7b19c589ea
3 changed files with 22 additions and 23 deletions

View File

@@ -22,35 +22,35 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Import;
import org.springframework.integration.support.MutableMessage;
import org.springframework.messaging.Message;
import org.springframework.messaging.MessageHeaders;
import org.springframework.messaging.support.MessageBuilder;
@SpringBootApplication
@Import({ org.springframework.cloud.fn.supplier.http.HttpSupplierConfiguration.class })
public class HttpIngest {
public class HttpClickIngest {
@Bean
public Function<Message<?>, Message<?>> byteArrayToLong() {
public Function<Message<?>, Message<UserClicks>> toUserClicks() {
return message -> {
if (message.getPayload() instanceof byte[]) {
MessageHeaders headers = message.getHeaders();
String contentType = headers.containsKey("contentType") ?
headers.get("contentType").toString() :
"application/json";
if (contentType.contains("text") || contentType.contains("json") || contentType
.contains("x-spring-tuple")) {
message = MessageBuilder
.withPayload(Long.valueOf(new String((byte[]) ((byte[]) message.getPayload()))))
.copyHeaders(message.getHeaders()).build();
}
}
return message;
return new MutableMessage<>(new UserClicks(
(String) message.getHeaders().get("kafka_receivedMessageKey"),
Long.valueOf(new String((byte[])message.getPayload()))));
};
}
public class UserClicks {
private String username;
private Long clicks;
public UserClicks(String username, Long clicks) {
this.username = username;
this.clicks = clicks;
}
}
public static void main(String[] args) {
SpringApplication.run(HttpIngest.class, args);
SpringApplication.run(HttpClickIngest.class, args);
}
}

View File

@@ -28,7 +28,7 @@ import org.springframework.messaging.support.MessageBuilder;
@SpringBootApplication
@Import({ org.springframework.cloud.fn.supplier.http.HttpSupplierConfiguration.class })
public class HttpIngest {
public class HttpRegionIngest {
@Bean
public Function<Message<?>, Message<?>> byteArrayToString() {
@@ -41,7 +41,7 @@ public class HttpIngest {
if (contentType.contains("text") || contentType.contains("json") || contentType
.contains("x-spring-tuple")) {
message = MessageBuilder
.withPayload(new String((byte[]) ((byte[]) message.getPayload())))
.withPayload(new String((byte[]) (message.getPayload())))
.copyHeaders(message.getHeaders()).build();
}
}
@@ -51,6 +51,6 @@ public class HttpIngest {
}
public static void main(String[] args) {
SpringApplication.run(HttpIngest.class, args);
SpringApplication.run(HttpRegionIngest.class, args);
}
}

View File

@@ -1,4 +1,3 @@
configuration-properties.classes=org.springframework.cloud.fn.supplier.http.HttpSupplierProperties,\
org.springframework.cloud.fn.supplier.http.HttpSupplierProperties$Cors
configuration-properties.names=server.port
configuration-properties.outbound-ports=clicks