Merge remote-tracking branch 'origin/master'

This commit is contained in:
zhou-hao 2020-06-02 18:39:24 +08:00
commit 20a397a2ff
32 changed files with 63 additions and 34 deletions

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -6,6 +6,7 @@ import io.netty.buffer.Unpooled;
import org.apache.commons.beanutils.BeanUtilsBean;
import org.apache.commons.beanutils.Converter;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType;
@Configuration
public class CommonConfiguration {
@ -26,6 +27,14 @@ public class CommonConfiguration {
return convert(aClass, JSON.toJSONBytes(o));
}
}, ByteBuf.class);
BeanUtilsBean.getInstance().getConvertUtils().register(new Converter() {
@Override
public <T> T convert(Class<T> aClass, Object o) {
return (T) MediaType.valueOf(String.valueOf(o));
}
}, MediaType.class);
}
}

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>network-component</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>network-component</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<packaging>pom</packaging>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>network-component</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -7,11 +7,16 @@ import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import org.jetlinks.community.network.DefaultNetworkType;
import org.jetlinks.community.network.NetworkType;
import org.jetlinks.community.network.tcp.client.TcpClient;
import org.jetlinks.community.network.tcp.client.VertxTcpClient;
import org.jetlinks.community.network.tcp.parser.PayloadParser;
import reactor.core.publisher.EmitterProcessor;
import reactor.core.publisher.Flux;
import reactor.core.publisher.FluxSink;
import java.time.Duration;
import java.util.Collection;
import java.util.function.Function;
import java.util.function.Supplier;
/**
@ -19,7 +24,7 @@ import java.util.function.Supplier;
* @since 1.0
**/
@Slf4j
public class VertxTcpServer extends AbstractTcpServer implements TcpServer {
public class VertxTcpServer implements TcpServer {
Collection<NetServer> tcpServers;
@ -29,12 +34,22 @@ public class VertxTcpServer extends AbstractTcpServer implements TcpServer {
private long keepAliveTimeout = Duration.ofMinutes(10).toMillis();
@Getter
private String id;
private final String id;
private final EmitterProcessor<TcpClient> processor = EmitterProcessor.create(false);
private final FluxSink<TcpClient> sink = processor.sink(FluxSink.OverflowStrategy.BUFFER);
public VertxTcpServer(String id) {
this.id = id;
}
@Override
public Flux<TcpClient> handleConnection() {
return processor
.map(Function.identity());
}
private void execute(Runnable runnable) {
try {
runnable.run();
@ -61,6 +76,11 @@ public class VertxTcpServer extends AbstractTcpServer implements TcpServer {
protected void acceptTcpConnection(NetSocket socket) {
if (!processor.hasDownstreams()) {
log.warn("not handler for tcp client[{}]", socket.remoteAddress());
socket.close();
return;
}
VertxTcpClient client = new VertxTcpClient(id + "_" + socket.remoteAddress());
client.setKeepAliveTimeoutMs(keepAliveTimeout);
try {
@ -72,7 +92,7 @@ public class VertxTcpServer extends AbstractTcpServer implements TcpServer {
});
client.setRecordParser(parserSupplier.get());
client.setSocket(socket);
received(client);
sink.next(client);
log.debug("accept tcp client [{}] connection", socket.remoteAddress());
} catch (Exception e) {
log.error("create tcp server client error", e);

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>notify-component</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>notify-component</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>notify-component</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>notify-component</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>notify-component</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>notify-component</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-community</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-components</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -7,7 +7,7 @@
<parent>
<groupId>org.jetlinks.community</groupId>
<artifactId>jetlinks-manager</artifactId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>authentication-manager</artifactId>

View File

@ -7,7 +7,7 @@
<parent>
<groupId>org.jetlinks.community</groupId>
<artifactId>jetlinks-manager</artifactId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>device-manager</artifactId>

View File

@ -7,7 +7,7 @@
<parent>
<groupId>org.jetlinks.community</groupId>
<artifactId>jetlinks-manager</artifactId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<artifactId>logging-manager</artifactId>

View File

@ -7,7 +7,7 @@
<parent>
<groupId>org.jetlinks.community</groupId>
<artifactId>jetlinks-manager</artifactId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>network-manager</artifactId>

View File

@ -7,7 +7,7 @@
<parent>
<groupId>org.jetlinks.community</groupId>
<artifactId>jetlinks-manager</artifactId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>notify-manager</artifactId>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-community</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
</parent>
<packaging>pom</packaging>
<modelVersion>4.0.0</modelVersion>

View File

@ -7,7 +7,7 @@
<parent>
<groupId>org.jetlinks.community</groupId>
<artifactId>jetlinks-manager</artifactId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>rule-engine-manager</artifactId>

View File

@ -7,7 +7,7 @@
<parent>
<groupId>org.jetlinks.community</groupId>
<artifactId>jetlinks-manager</artifactId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>visualization-manager</artifactId>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>jetlinks-community</artifactId>
<groupId>org.jetlinks.community</groupId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -6,7 +6,7 @@
<groupId>org.jetlinks.community</groupId>
<artifactId>jetlinks-community</artifactId>
<version>1.2.0</version>
<version>1.3.0-SNAPSHOT</version>
<modules>
<module>jetlinks-components</module>
<module>jetlinks-manager</module>
@ -22,7 +22,7 @@
<hsweb.framework.version>4.0.3</hsweb.framework.version>
<easyorm.version>4.0.3</easyorm.version>
<hsweb.expands.version>3.0.2</hsweb.expands.version>
<jetlinks.version>1.0.3</jetlinks.version>
<jetlinks.version>1.0.4-SNAPSHOT</jetlinks.version>
<r2dbc.version>Arabba-SR3</r2dbc.version>
<vertx.version>3.8.5</vertx.version>
<netty.version>4.1.46.Final</netty.version>