Skip to content
Merged

Dev #204

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion example/example-app/example-app-cmd-domain/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>example-app</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion example/example-app/example-app-cmd-meta/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>example-app</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion example/example-app/example-app-query/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>example-app</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion example/example-app/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>springboot-example</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>
<packaging>pom</packaging>
Expand Down
2 changes: 1 addition & 1 deletion example/example-domain/example-domain-leave/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>example-domain</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion example/example-domain/example-domain-user/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>example-domain</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion example/example-domain/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>springboot-example</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Expand Down
2 changes: 1 addition & 1 deletion example/example-infra/example-infra-flow/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>example-infra</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion example/example-infra/example-infra-jpa/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>example-infra</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion example/example-infra/example-infra-security/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>example-infra</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion example/example-infra/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>springboot-example</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
<relativePath>../pom.xml</relativePath>
</parent>
<packaging>pom</packaging>
Expand Down
2 changes: 1 addition & 1 deletion example/example-interface/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>springboot-example</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
</parent>

<artifactId>example-interface</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion example/example-server/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<artifactId>springboot-example</artifactId>
<groupId>com.codingapi.springboot</groupId>
<version>3.4.53</version>
<version>3.4.54</version>
</parent>
<modelVersion>4.0.0</modelVersion>

Expand Down
2 changes: 1 addition & 1 deletion example/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
</parent>

<artifactId>springboot-example</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>

<name>springboot-example</name>
<description>springboot-example project for Spring Boot</description>
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

<groupId>com.codingapi.springboot</groupId>
<artifactId>springboot-parent</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>

<url>https://github.com/codingapi/springboot-framewrok</url>
<name>springboot-parent</name>
Expand Down
2 changes: 1 addition & 1 deletion springboot-starter-data-authorization/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>springboot-parent</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
</parent>

<name>springboot-starter-data-authorization</name>
Expand Down
2 changes: 1 addition & 1 deletion springboot-starter-data-fast/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<artifactId>springboot-parent</artifactId>
<groupId>com.codingapi.springboot</groupId>
<version>3.4.53</version>
<version>3.4.54</version>
</parent>
<modelVersion>4.0.0</modelVersion>

Expand Down
2 changes: 1 addition & 1 deletion springboot-starter-flow/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<artifactId>springboot-parent</artifactId>
<groupId>com.codingapi.springboot</groupId>
<version>3.4.53</version>
<version>3.4.54</version>
</parent>

<name>springboot-starter-flow</name>
Expand Down
2 changes: 1 addition & 1 deletion springboot-starter-script/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>springboot-parent</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
</parent>

<name>springboot-starter-script</name>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
package com.codingapi.springboot.script.scanner;

import com.codingapi.springboot.framework.reflect.ObjectAnnotationFieldUtils;
import com.codingapi.springboot.script.GroovyScript;
import com.codingapi.springboot.script.annotation.ScriptField;
import com.codingapi.springboot.script.annotation.ScriptFunction;
import com.codingapi.springboot.script.annotation.ScriptParameter;
import com.codingapi.springboot.script.annotation.ScriptType;
import com.codingapi.springboot.script.strategy.ScriptTypeMappingContext;
import com.codingapi.springboot.script.meta.GroovyField;
import com.codingapi.springboot.script.meta.GroovyFunction;
import com.codingapi.springboot.script.meta.GroovyMetadata;
import com.codingapi.springboot.script.meta.GroovyType;
import com.codingapi.springboot.script.strategy.GroovyMetadataGenerateStrategyContext;
import com.codingapi.springboot.script.strategy.GroovyTypeFixStrategyContext;
import com.codingapi.springboot.script.strategy.ScriptTypeMappingContext;
import lombok.Getter;
import org.springframework.util.ClassUtils;
import org.springframework.util.ReflectionUtils;
import org.springframework.util.StringUtils;

Expand Down Expand Up @@ -209,92 +209,91 @@ public GroovyTypeScanner(Class<?> clazz, GroovyMetadataHolder holder) {
* 加载字段信息
*/
private void loadFields() {
ReflectionUtils.doWithFields(this.clazz, field -> {
ScriptField scriptField = field.getAnnotation(ScriptField.class);
if (scriptField != null) {
Class<?> clazz = this.holder.getTargetClass(field.getType());
try {
ReflectionUtils.doWithFields(this.clazz, field -> {
ScriptField scriptField = field.getAnnotation(ScriptField.class);
if (scriptField != null) {
Class<?> clazz = this.holder.getTargetClass(field.getType());

GroovyTypeScanner scanner = new GroovyTypeScanner(clazz, this.holder);
scanner.scanner();
GroovyTypeScanner scanner = new GroovyTypeScanner(clazz, this.holder);
scanner.scanner();

GroovyField groovyField = new GroovyField();
groovyField.setDataType(clazz.getSimpleName());
groovyField.setName(field.getName());
GroovyField groovyField = new GroovyField();
groovyField.setDataType(clazz.getSimpleName());
groovyField.setName(field.getName());

if (StringUtils.hasText(scriptField.name())) {
groovyField.setName(scriptField.name());
}
if (StringUtils.hasText(scriptField.description())) {
groovyField.setDescription(scriptField.description());
if (StringUtils.hasText(scriptField.name())) {
groovyField.setName(scriptField.name());
}
if (StringUtils.hasText(scriptField.description())) {
groovyField.setDescription(scriptField.description());
}
this.object.addField(groovyField);
}
this.object.addField(groovyField);
}
});
});
}catch (Exception e){
System.out.println(this.clazz);
throw e;
}
}

/**
* 加载函数信息
*/
private void loadMethods() {
ReflectionUtils.doWithMethods(this.clazz, method -> {
ScriptFunction scriptFunction = method.getAnnotation(ScriptFunction.class);
if (scriptFunction != null) {
GroovyFunction groovyFunction = new GroovyFunction();
groovyFunction.setName(method.getName());

if (StringUtils.hasText(scriptFunction.name())) {
groovyFunction.setName(scriptFunction.name());
}

if (StringUtils.hasText(scriptFunction.description())) {
groovyFunction.setDescription(scriptFunction.description());
}

Parameter[] methodParameters = method.getParameters();
for (Parameter methodParameter : methodParameters) {
Class<?> parameterClass = this.holder.getTargetClass(methodParameter.getType());

GroovyTypeScanner scanner = new GroovyTypeScanner(parameterClass, this.holder);
scanner.scanner();
try {
ReflectionUtils.doWithMethods(this.clazz, method -> {
ScriptFunction scriptFunction = method.getAnnotation(ScriptFunction.class);
if (scriptFunction != null) {
GroovyFunction groovyFunction = new GroovyFunction();
groovyFunction.setName(method.getName());

if (StringUtils.hasText(scriptFunction.name())) {
groovyFunction.setName(scriptFunction.name());
}

GroovyField groovyParameter = new GroovyField();
groovyParameter.setDataType(parameterClass.getSimpleName());
groovyParameter.setName(methodParameter.getName());
if (StringUtils.hasText(scriptFunction.description())) {
groovyFunction.setDescription(scriptFunction.description());
}

ScriptParameter scriptParameter = methodParameter.getAnnotation(ScriptParameter.class);
if (scriptParameter != null) {
if (StringUtils.hasText(scriptParameter.name())) {
groovyParameter.setName(scriptParameter.name());
}
if (StringUtils.hasText(scriptParameter.description())) {
groovyParameter.setDescription(scriptParameter.description());
Parameter[] methodParameters = method.getParameters();
for (Parameter methodParameter : methodParameters) {
Class<?> parameterClass = this.holder.getTargetClass(methodParameter.getType());

GroovyTypeScanner scanner = new GroovyTypeScanner(parameterClass, this.holder);
scanner.scanner();

GroovyField groovyParameter = new GroovyField();
groovyParameter.setDataType(parameterClass.getSimpleName());
groovyParameter.setName(methodParameter.getName());

ScriptParameter scriptParameter = methodParameter.getAnnotation(ScriptParameter.class);
if (scriptParameter != null) {
if (StringUtils.hasText(scriptParameter.name())) {
groovyParameter.setName(scriptParameter.name());
}
if (StringUtils.hasText(scriptParameter.description())) {
groovyParameter.setDescription(scriptParameter.description());
}
}
}

groovyFunction.addParameter(groovyParameter);
}
groovyFunction.addParameter(groovyParameter);
}

Class<?> returnType = this.holder.getTargetClass(method.getReturnType());
GroovyTypeScanner scanner = new GroovyTypeScanner(returnType, this.holder);
scanner.scanner();
groovyFunction.setReturnType(returnType.getSimpleName());
Class<?> returnType = this.holder.getTargetClass(method.getReturnType());
GroovyTypeScanner scanner = new GroovyTypeScanner(returnType, this.holder);
scanner.scanner();
groovyFunction.setReturnType(returnType.getSimpleName());

this.object.addFunction(groovyFunction);
}
});
this.object.addFunction(groovyFunction);
}
});
}catch (Exception e){
System.out.println(this.clazz);
throw e;
}
}

/**
* 是否简单数据结构
*/
private boolean isSimpleType() {
return this.clazz.isPrimitive()
|| ClassUtils.isPrimitiveOrWrapper(this.clazz)
|| this.clazz == String.class
|| this.clazz.isEnum()
|| Number.class.isAssignableFrom(this.clazz)
|| CharSequence.class.isAssignableFrom(this.clazz);
}


/**
Expand All @@ -308,7 +307,7 @@ public void scanner() {
}

// 简单数据类型不处理
if (this.isSimpleType()) {
if (ObjectAnnotationFieldUtils.isSimpleType(this.clazz)) {
return;
}

Expand Down
2 changes: 1 addition & 1 deletion springboot-starter-security/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<artifactId>springboot-parent</artifactId>
<groupId>com.codingapi.springboot</groupId>
<version>3.4.53</version>
<version>3.4.54</version>
</parent>

<artifactId>springboot-starter-security</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion springboot-starter/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>com.codingapi.springboot</groupId>
<artifactId>springboot-parent</artifactId>
<version>3.4.53</version>
<version>3.4.54</version>
</parent>
<artifactId>springboot-starter</artifactId>

Expand Down
Loading