You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2018/05/19 09:37:29 UTC
[isis] 08/13: ISIS-1949: Adds new core plugin stubs
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 5eb88908219d2886133941ce86f511ca6d95ea37
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sat May 19 09:51:56 2018 +0200
ISIS-1949: Adds new core plugin stubs
Task-Url: https://issues.apache.org/jira/browse/ISIS-1949
---
core/plugins/codegen-bytebuddy/.gitignore | 1 +
core/plugins/codegen-bytebuddy/pom.xml | 74 ++++++++++++++++++++++
.../codegen/ProxyFactoryPluginUsingByteBuddy.java | 22 +++++++
...core.runtime.plugins.codegen.ProxyFactoryPlugin | 1 +
core/plugins/codegen-javassist/.gitignore | 1 +
core/plugins/codegen-javassist/pom.xml | 70 ++++++++++++++++++++
.../codegen/ProxyFactoryPluginUsingJavassist.java | 21 ++++++
...core.runtime.plugins.codegen.ProxyFactoryPlugin | 1 +
core/runtime/pom.xml | 6 --
9 files changed, 191 insertions(+), 6 deletions(-)
diff --git a/core/plugins/codegen-bytebuddy/.gitignore b/core/plugins/codegen-bytebuddy/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/plugins/codegen-bytebuddy/.gitignore
@@ -0,0 +1 @@
+/target-ide
diff --git a/core/plugins/codegen-bytebuddy/pom.xml b/core/plugins/codegen-bytebuddy/pom.xml
new file mode 100644
index 0000000..0732c78
--- /dev/null
+++ b/core/plugins/codegen-bytebuddy/pom.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
+ license agreements. See the NOTICE file distributed with this work for additional
+ information regarding copyright ownership. The ASF licenses this file to
+ you under the Apache License, Version 2.0 (the "License"); you may not use
+ this file except in compliance with the License. You may obtain a copy of
+ the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
+ by applicable law or agreed to in writing, software distributed under the
+ License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+ OF ANY KIND, either express or implied. See the License for the specific
+ language governing permissions and limitations under the License. -->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>${revision}</version>
+ <relativePath>../../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>isis-core-plugins-codegen-bytebuddy</artifactId>
+
+ <name>Apache Isis Plugin for Code Generation (ByteBuddy)</name>
+ <description>
+ Code generation plugin using ByteBuddy.
+ </description>
+
+ <properties>
+ <bytebuddy.version>1.8.0</bytebuddy.version>
+
+ <jar-plugin.automaticModuleName>org.apache.isis.plugins.codegen-bytebuddy</jar-plugin.automaticModuleName>
+ <git-plugin.propertiesDir>org/apache/isis/plugins/codegen-bytebuddy</git-plugin.propertiesDir>
+ </properties>
+
+ <build>
+ <resources>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/resources</directory>
+ </resource>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**</include>
+ </includes>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+
+ <dependencies>
+ <!-- compile dependencies -->
+ <dependency>
+ <groupId>net.bytebuddy</groupId>
+ <artifactId>byte-buddy</artifactId>
+ <version>${bytebuddy.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-runtime</artifactId>
+ <scope>compile</scope>
+ </dependency>
+
+ </dependencies>
+
+
+</project>
\ No newline at end of file
diff --git a/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java b/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
new file mode 100644
index 0000000..0154f46
--- /dev/null
+++ b/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
@@ -0,0 +1,22 @@
+package org.apache.isis.core.runtime.plugins.codegen;
+
+import java.lang.reflect.Method;
+import java.util.function.Predicate;
+
+import org.apache.isis.applib.internal.exceptions._Exceptions;
+
+public class ProxyFactoryPluginUsingByteBuddy implements ProxyFactoryPlugin {
+
+ @Override
+ public <T> ProxyFactory<T> factory(
+ Class<T> base,
+ Class<?>[] interfaces,
+ Predicate<Method> methodFilter,
+ Class<?>[] constructorArgTypes) {
+
+ _Exceptions.throwNotImplemented();
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
diff --git a/core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin b/core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin
new file mode 100644
index 0000000..f1dc631
--- /dev/null
+++ b/core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin
@@ -0,0 +1 @@
+org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPluginUsingByteBuddy
\ No newline at end of file
diff --git a/core/plugins/codegen-javassist/.gitignore b/core/plugins/codegen-javassist/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/plugins/codegen-javassist/.gitignore
@@ -0,0 +1 @@
+/target-ide
diff --git a/core/plugins/codegen-javassist/pom.xml b/core/plugins/codegen-javassist/pom.xml
new file mode 100644
index 0000000..d7f4b7b
--- /dev/null
+++ b/core/plugins/codegen-javassist/pom.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
+ license agreements. See the NOTICE file distributed with this work for additional
+ information regarding copyright ownership. The ASF licenses this file to
+ you under the Apache License, Version 2.0 (the "License"); you may not use
+ this file except in compliance with the License. You may obtain a copy of
+ the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
+ by applicable law or agreed to in writing, software distributed under the
+ License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+ OF ANY KIND, either express or implied. See the License for the specific
+ language governing permissions and limitations under the License. -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>${revision}</version>
+ <relativePath>../../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>isis-core-plugins-codegen-javassist</artifactId>
+
+ <name>Apache Isis Plugin for Code Generation (Javassist)</name>
+ <description>
+ Code generation plugin using Javassist.
+ </description>
+
+ <properties>
+ <jar-plugin.automaticModuleName>org.apache.isis.plugins.codegen-javassist</jar-plugin.automaticModuleName>
+ <git-plugin.propertiesDir>org/apache/isis/plugins/codegen-javassist</git-plugin.propertiesDir>
+ </properties>
+
+ <build>
+ <resources>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/resources</directory>
+ </resource>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**</include>
+ </includes>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+
+ <dependencies>
+ <!-- compile dependencies -->
+ <dependency>
+ <groupId>org.javassist</groupId>
+ <artifactId>javassist</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-runtime</artifactId>
+ <scope>compile</scope>
+ </dependency>
+
+ </dependencies>
+
+
+</project>
\ No newline at end of file
diff --git a/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingJavassist.java b/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
new file mode 100644
index 0000000..711c1e1
--- /dev/null
+++ b/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
@@ -0,0 +1,21 @@
+package org.apache.isis.core.runtime.plugins.codegen;
+
+import java.lang.reflect.Method;
+import java.util.function.Predicate;
+
+import org.apache.isis.applib.internal.exceptions._Exceptions;
+
+public class ProxyFactoryPluginUsingJavassist implements ProxyFactoryPlugin {
+
+ @Override
+ public <T> ProxyFactory<T> factory(
+ Class<T> base,
+ Class<?>[] interfaces,
+ Predicate<Method> methodFilter,
+ Class<?>[] constructorArgTypes) {
+ // TODO Auto-generated method stub
+ _Exceptions.throwNotImplemented();
+ return null;
+ }
+
+}
diff --git a/core/plugins/codegen-javassist/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin b/core/plugins/codegen-javassist/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin
new file mode 100644
index 0000000..a2d4b84
--- /dev/null
+++ b/core/plugins/codegen-javassist/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin
@@ -0,0 +1 @@
+org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPluginUsingJavassist
\ No newline at end of file
diff --git a/core/runtime/pom.xml b/core/runtime/pom.xml
index 9a489dc..2c197a9 100644
--- a/core/runtime/pom.xml
+++ b/core/runtime/pom.xml
@@ -121,12 +121,6 @@
<artifactId>commons-logging</artifactId>
</dependency>
- <!-- for our home-grown proxies for @RequestScoped -->
-<!-- <dependency> -->
-<!-- <groupId>org.javassist</groupId> -->
-<!-- <artifactId>javassist</artifactId> -->
-<!-- </dependency> -->
-
</dependencies>
<profiles>
--
To stop receiving notification emails like this one, please contact
ahuber@apache.org.