Quellcode durchsuchen

调通类动态加载

Airhead vor 8 Jahren
Ursprung
Commit
f5358b536c

+ 2 - 2
hos-arbiter/src/main/java/com/yihu/hos/arbiter/routers/EndpointEventRouter.java

@ -23,8 +23,8 @@ public class EndpointEventRouter extends RouteBuilder {
        ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(
                activemqConfiguration.getUser(), activemqConfiguration.getPassword(),activemqConfiguration.getBrokerURL());
        // Note we can explicit name the component
        context.addComponent("service-event", JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
        from("service-event:queue:configuration.endpoint")
        context.addComponent("endpoint.event", JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
        from("endpoint.event:queue:configuration.endpoint")
                .to("bean:endpointService?method=trigger"); //TODO:这边可以做Message Filter,减化trigger逻辑
    }
}

+ 2 - 2
hos-arbiter/src/main/java/com/yihu/hos/arbiter/routers/ServiceFlowEventRouter.java

@ -23,8 +23,8 @@ public class ServiceFlowEventRouter extends RouteBuilder {
        ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(
                activemqConfiguration.getUser(), activemqConfiguration.getPassword(),activemqConfiguration.getBrokerURL());
        // Note we can explicit name the component
        context.addComponent("service-event", JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
        from("service-event:queue:configuration.service.flow")
        context.addComponent("service.flow.event", JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
        from("service.flow.event:queue:configuration.service.flow")
                .to("bean:serviceFlowService?method=trigger"); //TODO:这边可以做Message Filter,减化trigger逻辑
    }
}

+ 1 - 0
hos-arbiter/src/main/java/com/yihu/hos/arbiter/services/BrokerServerService.java

@ -31,6 +31,7 @@ public class BrokerServerService {
        update.set("hostAddress", brokerServer.getHostAddress());
        update.set("port", brokerServer.getPort());
        update.set("updateTime", brokerServer.getUpdateTime());
        update.set("enable", brokerServer.isEnable());
        mongoOperations.upsert(query, update, BrokerServer.class);
    }

+ 2 - 2
hos-arbiter/src/main/java/com/yihu/hos/arbiter/services/ServiceFlowService.java

@ -57,7 +57,7 @@ public class ServiceFlowService {
        try {
            ServiceFlow serviceFlow = objectMapper.readValue(msg, ServiceFlow.class);
            List<NameValuePair> nameValuePairList = new ArrayList<>();
            nameValuePairList.add(new BasicNameValuePair("serviceName", serviceFlow.getServiceFlow()));
            nameValuePairList.add(new BasicNameValuePair("serviceFlow", serviceFlow.getServiceFlow()));
            nameValuePairList.add(new BasicNameValuePair("packageName", serviceFlow.getPackageName()));
            nameValuePairList.add(new BasicNameValuePair("className", serviceFlow.getClassName()));
            nameValuePairList.add(new BasicNameValuePair("path", serviceFlow.getPath()));
@ -101,7 +101,7 @@ public class ServiceFlowService {
                                .setScheme("http")
                                .setHost(brokerServer.getHostAddress() + ":" + brokerServer.getPort())
                                .setPath("/route")
                                .setParameter("serviceName", serviceFlow.getServiceFlow())
                                .setParameter("serviceFlow", serviceFlow.getServiceFlow())
                                .setParameter("packageName", serviceFlow.getPackageName())
                                .setParameter("className", serviceFlow.getClassName())
                                .setParameter("path", serviceFlow.getPath())

+ 2 - 0
hos-broker/src/main/java/com/yihu/hos/services/BrokerServerService.java

@ -49,6 +49,7 @@ public class BrokerServerService implements DisposableBean {
            objectNode.put("hostName", hostName);
            objectNode.put("hostAddress", hostAddress);
            objectNode.put("port", port);
            objectNode.put("enable", true);
            String brokerServer = objectMapper.writeValueAsString(objectNode);
            List<NameValuePair> nameValuePairList = new ArrayList<>();
@ -75,6 +76,7 @@ public class BrokerServerService implements DisposableBean {
            objectNode.put("hostName", hostName);
            objectNode.put("hostAddress", hostAddress);
            objectNode.put("port", port);
            objectNode.put("enable", false);
            String brokerServer = objectMapper.writeValueAsString(objectNode);
            URI uri = new URIBuilder(arbiterConfiguration.getServer() + "/brokerServer")

+ 3 - 3
hos-broker/src/main/resources/application.yml

@ -1,10 +1,10 @@
server:
  contextPath:
  port: 8099
  port: 0
  sessionTimeout:  300
local:
  server:
    port: 8099
    port: 0
  application:
    name: HosBrokerServer
security:
@ -52,7 +52,7 @@ spring:
    port: 8066
hos:
  arbiter:
    enable: false
    enable: true
    url: http://192.168.131.38:10135
  timer:
      period: 10000

+ 6 - 6
hos-core/src/main/java/com/yihu/hos/core/datatype/ClassFileUtil.java

@ -17,10 +17,11 @@ public class ClassFileUtil {
    /**
     * 通过这个工具方法,可以进行class文件的创建
     *
     * @param systemFlowURL 本次进行系统创建的system业务系统存储class文件的根目录
     * @param packageName class文件的包信息
     * @param className class文件的类名信息
     * @param path class文件的路径
     * @param packageName   class文件的包信息
     * @param className     class文件的类名信息
     * @param path          class文件的路径
     */
    public static void createClassfile(URL systemFlowURL, String packageName, String className, String path) {
        // 开始输出文件内容
@ -37,10 +38,9 @@ public class ClassFileUtil {
            String classPath = packageFile + "/" + className + ".class";
            File file = new File(classPath);
            if (file.isFile() && file.exists()) {
                return;
            } else {
                file.createNewFile();
                file.delete();
            }
            file.createNewFile();
            FileOutputStream out = new FileOutputStream(classPath);
            int n = 0;// 每次读取的字节长度