Airhead 8 سال پیش
والد
کامیت
d9654cc862

+ 1 - 29
hos-camel/hos-camel.iml

@ -10,34 +10,6 @@
    </content>
    <orderEntry type="inheritedJdk" />
    <orderEntry type="sourceFolder" forTests="false" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-core:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-spring-boot:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-spring:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-http4:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-http-common:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-jms:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-cxf:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-cxf-transport:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxrs:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-core:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-rs-security-oauth:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-rs-client:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.1.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-quartz:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-quartz2:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-xmljson:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-stream:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-jetty:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-jetty9:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.camel:camel-jetty-common:2.17.1" level="project" />
    <orderEntry type="library" name="Maven: net.sf.json-lib:json-lib:2.4" level="project" />
    <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.3" level="project" />
    <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.2" level="project" />
@ -146,7 +118,7 @@
    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-mongodb:1.9.5.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:1.12.5.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.37" level="project" />
    <orderEntry type="module" module-name="hos-core" />
    <orderEntry type="library" name="Maven: com.yihu.hos:hos-core:1.3.0" level="project" />
    <orderEntry type="library" name="Maven: net.lingala.zip4j:zip4j:1.3.2" level="project" />
    <orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.0" level="project" />
    <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" />

+ 1 - 1
hos-camel/src/main/java/gateway/processor/ApiParam.java

@ -1,4 +1,4 @@
package camel.gateway.processor;
package gateway.processor;
/**
 * @author Airhead

+ 43 - 7
hos-camel/src/main/java/gateway/processor/AppApi.java

@ -1,8 +1,10 @@
package camel.gateway.processor;
package gateway.processor;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
/**
@ -23,15 +25,49 @@ public class AppApi {
    private String msMethodName;
    private String microServiceName;
    private Collection<Param> parameters;
    private Collection<ApiParam> parameters;
    public AppApi(String apiInfo) throws IOException {
        this.parse(apiInfo);
    public AppApi() {
    }
    public static AppApi parse(String apiInfo) throws IOException {
        ObjectMapper objectMapper = new ObjectMapper();
        return objectMapper.readValue(apiInfo, AppApi.class);
        JsonNode jsonNode = objectMapper.readValue(apiInfo, JsonNode.class);
        JsonNode detailModelList = jsonNode.get("detailModelList");
        if (detailModelList != null && detailModelList.isArray() && detailModelList.size() != 0) {
            JsonNode apiNode = detailModelList.get(0);
            AppApi appApi = new AppApi();
            appApi.setName(apiNode.path("name").asText());
            appApi.setType(apiNode.path("type").asText());
            appApi.setMethod(apiNode.path("method").asText());
            appApi.setProtocol(apiNode.path("protocol").asText());
            appApi.setVersion(apiNode.path("version").asText());
            appApi.setMethodName(apiNode.path("methodName").asText());
            appApi.setMicroServiceUri(apiNode.path("microServiceUri").asText());
            appApi.setMsMethodName(apiNode.path("msMethodName").asText());
            appApi.setMethodName(apiNode.path("methodName").asText());
            appApi.setMicroServiceName(apiNode.path("microServiceName").asText());
            JsonNode parametersNode = apiNode.get("parameters");
            Collection<ApiParam> parameters = new ArrayList<>();
            if (parametersNode != null && parametersNode.size() != 0) {
                parametersNode.forEach(paramNode -> {
                    ApiParam apiParam = new ApiParam();
                    apiParam.setName(paramNode.path("name").asText());
                    apiParam.setType(paramNode.path("type").asText());
                    apiParam.setDataType(paramNode.path("dataType").asText());
                    apiParam.setDefaultValue(paramNode.path("defaultValue").asText());
                    parameters.add(apiParam);
                });
            }
            appApi.setParameters(parameters);
            return appApi;
        }
        return null;
    }
    public String getName() {
@ -130,11 +166,11 @@ public class AppApi {
        this.microServiceName = microServiceName;
    }
    public Collection<Param> getParameters() {
    public Collection<ApiParam> getParameters() {
        return parameters;
    }
    public void setParameters(Collection<Param> parameters) {
    public void setParameters(Collection<ApiParam> parameters) {
        this.parameters = parameters;
    }

+ 1 - 1
hos-camel/src/main/java/gateway/processor/ErrorHandle.java

@ -1,4 +1,4 @@
package camel.gateway.processor;
package gateway.processor;
import org.springframework.stereotype.Component;

+ 2 - 6
hos-camel/src/main/java/gateway/processor/GatewayProcessor.java

@ -1,4 +1,4 @@
package camel.gateway.processor;
package gateway.processor;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
@ -63,11 +63,7 @@ public class GatewayProcessor implements Processor {
            return "jetty:http://0.0.0.0:9999/error/unauthorizedError";    //TODO:
        }
        String[] requestBody = {""};
        String endpoint = genEndpoint(params, requestBody);
        exchange.getOut().setBody(requestBody);
        return endpoint;
        return genEndpoint(params, exchange);
    }
    private boolean checkParams(Map<String, Object> params) {

+ 1 - 1
hos-camel/src/main/java/gateway/processor/ParamVerifyBean.java

@ -1,4 +1,4 @@
package camel.gateway.processor;
package gateway.processor;
import com.yihu.hos.core.datatype.StringUtil;
import com.yihu.hos.core.encrypt.MD5;