Skip to content

Commit 614cc9e

Browse files
committed
Add Jython-based Python executor module with autoconfigure and core support, implementing Python execution lifecycle, properties configuration, and Spring Boot integration.
1 parent ea4ac6e commit 614cc9e

File tree

56 files changed

+2052
-43
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+2052
-43
lines changed

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,6 @@ gen
88
/target/
99
*.asc
1010

11-
/test-app/
11+
/test-app/
12+
13+
.jython_cache/

.idea/compiler.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/encodings.xml

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

common/python-executor-common/pom.xml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,15 @@
3434
<artifactId>python-executor-parent</artifactId>
3535
<version>1.1.0</version>
3636
</parent>
37+
<properties>
38+
<jetbrains-annotations.version>26.0.2-1</jetbrains-annotations.version>
39+
</properties>
40+
<dependencies>
41+
<dependency>
42+
<groupId>org.jetbrains</groupId>
43+
<artifactId>annotations</artifactId>
44+
<version>${jetbrains-annotations.version}</version>
45+
<optional>true</optional>
46+
</dependency>
47+
</dependencies>
3748
</project>

common/python-executor-common/src/main/java/io/maksymuimanov/python/common/Prioritized.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
public interface Prioritized extends Comparable<Prioritized> {
44
int MAX_PRIORITY = Integer.MAX_VALUE;
5-
int HIGH_PRIORITY = -1000;
5+
int HIGH_PRIORITY = 1000;
66
int DEFAULT_PRIORITY = 0;
7-
int LOW_PRIORITY = 1000;
7+
int LOW_PRIORITY = -1000;
88
int MIN_PRIORITY = Integer.MIN_VALUE;
99

1010
default int getPriority() {

common/python-executor-common/src/main/java/io/maksymuimanov/python/converter/PythonTypeConverter.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
import io.maksymuimanov.python.common.Prioritized;
44
import io.maksymuimanov.python.script.PythonRepresentation;
55
import io.maksymuimanov.python.serializer.PythonSerializer;
6+
import org.jetbrains.annotations.ApiStatus;
67

8+
@ApiStatus.Experimental
79
public interface PythonTypeConverter extends Prioritized {
810
PythonRepresentation convert(Object value, PythonSerializer pythonSerializer);
911

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
@NullMarked
2+
@ApiStatus.Experimental
23
package io.maksymuimanov.python.converter;
34

5+
import org.jetbrains.annotations.ApiStatus;
46
import org.jspecify.annotations.NullMarked;

common/python-executor-common/src/main/java/io/maksymuimanov/python/deconverter/PythonTypeDeconverter.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
import io.maksymuimanov.python.common.Prioritized;
44
import io.maksymuimanov.python.deserializer.PythonDeserializer;
55
import io.maksymuimanov.python.script.PythonRepresentation;
6+
import org.jetbrains.annotations.ApiStatus;
67
import org.jspecify.annotations.Nullable;
78

9+
@ApiStatus.Experimental
810
public interface PythonTypeDeconverter<R extends PythonRepresentation> extends Prioritized {
911
@Nullable
1012
Object deconvert(R pythonRepresentation, PythonDeserializer pythonDeserializer);
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
@NullMarked
2+
@ApiStatus.Experimental
23
package io.maksymuimanov.python.deconverter;
34

5+
import org.jetbrains.annotations.ApiStatus;
46
import org.jspecify.annotations.NullMarked;

0 commit comments

Comments
 (0)