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 <ahu...@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 ahu...@apache.org.