You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2017/11/03 09:46:20 UTC
[isis] branch dev/2.0.0/ISIS-1632-meta-annotations updated:
ISIS-1632: removes @Meta annotation, since not required.
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch dev/2.0.0/ISIS-1632-meta-annotations
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/dev/2.0.0/ISIS-1632-meta-annotations by this push:
new 1c05c0e ISIS-1632: removes @Meta annotation, since not required.
1c05c0e is described below
commit 1c05c0efdc4a43ae6a91177e60f92c1292213b82
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Nov 3 09:09:47 2017 +0000
ISIS-1632: removes @Meta annotation, since not required.
---
.../org/apache/isis/applib/annotation/Meta.java | 34 ----------------------
.../isis/core/metamodel/facets/Annotations.java | 18 ++++++++----
.../Annotations_getAnnotations_on_Class_Test.java | 8 ++---
.../Annotations_getAnnotations_on_Field_Test.java | 4 ---
.../Annotations_getAnnotations_on_Method_Test.java | 5 ----
...notations_getAnnotations_on_Parameter_Test.java | 5 ----
.../domainapp/modules/simple/dom/types/Name.java | 2 --
7 files changed, 15 insertions(+), 61 deletions(-)
diff --git a/core/applib/src/main/java/org/apache/isis/applib/annotation/Meta.java b/core/applib/src/main/java/org/apache/isis/applib/annotation/Meta.java
deleted file mode 100644
index b5cbb81..0000000
--- a/core/applib/src/main/java/org/apache/isis/applib/annotation/Meta.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * 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.
- */
-
-package org.apache.isis.applib.annotation;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Inherited;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-@Inherited
-@Target({ ElementType.ANNOTATION_TYPE })
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Meta {
-
-
-}
\ No newline at end of file
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/Annotations.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/Annotations.java
index 95bd112..b2aaeda 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/Annotations.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/Annotations.java
@@ -36,7 +36,6 @@ import com.google.common.collect.Lists;
import org.apache.isis.applib.annotation.Collection;
import org.apache.isis.applib.annotation.CollectionLayout;
import org.apache.isis.applib.annotation.MemberOrder;
-import org.apache.isis.applib.annotation.Meta;
import org.apache.isis.applib.annotation.Property;
import org.apache.isis.applib.annotation.PropertyLayout;
import org.apache.isis.applib.annotation.Title;
@@ -187,14 +186,21 @@ public final class Annotations {
final Annotation annotation,
final Class<T> annotationClass,
final List<AnnotationAndDepth<T>> annotationAndDepths) {
- appendWithDepth(annotation, annotationClass, annotationAndDepths, 0);
+ appendWithDepth(annotation, annotationClass, annotationAndDepths, 0, Lists.newArrayList());
}
private static <T extends Annotation> void appendWithDepth(
final Annotation annotation,
final Class<T> annotationClass,
final List<AnnotationAndDepth<T>> annotationAndDepths,
- final int depth) {
+ final int depth,
+ final List<Annotation> visited) {
+ if (visited.contains(annotation)) {
+ return;
+ } else {
+ // prevent infinite loop
+ visited.add(annotation);
+ }
final Class<? extends Annotation> annotationType = annotation.annotationType();
// directly annotated
@@ -203,12 +209,12 @@ public final class Annotations {
}
// if meta-annotation
- if(annotationType.getAnnotation(Meta.class) != null) {
+ //if(annotationType.getAnnotation(Meta.class) != null) {
final Annotation[] annotationsOnAnnotation = annotationType.getAnnotations();
for (final Annotation annotationOnAnnotation : annotationsOnAnnotation) {
- appendWithDepth(annotationOnAnnotation, annotationClass, annotationAndDepths, depth+1);
+ appendWithDepth(annotationOnAnnotation, annotationClass, annotationAndDepths, depth+1, visited);
}
- }
+ //}
}
/**
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Class_Test.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Class_Test.java
index 96401ab..6083787 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Class_Test.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Class_Test.java
@@ -10,8 +10,6 @@ import java.util.List;
import org.junit.Assert;
import org.junit.Test;
-import org.apache.isis.applib.annotation.Meta;
-
import static org.hamcrest.CoreMatchers.is;
public class Annotations_getAnnotations_on_Class_Test {
@@ -30,7 +28,7 @@ public class Annotations_getAnnotations_on_Class_Test {
}
- @Meta
+ //@Meta
@DomainObj(publishng = DomainObj.Publishng.YES)
@Inherited
@Target({ ElementType.TYPE, ElementType.ANNOTATION_TYPE })
@@ -38,7 +36,7 @@ public class Annotations_getAnnotations_on_Class_Test {
@interface Published {
}
- @Meta
+ //@Meta
@DomainObj(publishng = DomainObj.Publishng.NO)
@Inherited
@Target({ ElementType.TYPE, ElementType.ANNOTATION_TYPE })
@@ -46,7 +44,7 @@ public class Annotations_getAnnotations_on_Class_Test {
@interface NotPublished {
}
- @Meta
+ //@Meta
@Published
@Inherited
@Target({ ElementType.TYPE, ElementType.ANNOTATION_TYPE })
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Field_Test.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Field_Test.java
index 2e767e3..cda729a 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Field_Test.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Field_Test.java
@@ -11,7 +11,6 @@ import java.util.List;
import org.junit.Assert;
import org.junit.Test;
-import org.apache.isis.applib.annotation.Meta;
import org.apache.isis.applib.annotation.Property;
import org.apache.isis.applib.annotation.Publishing;
@@ -20,7 +19,6 @@ import static org.hamcrest.CoreMatchers.is;
public class Annotations_getAnnotations_on_Field_Test {
- @Meta
@Property(publishing = Publishing.ENABLED)
@Inherited
@Target({ ElementType.FIELD, ElementType.ANNOTATION_TYPE })
@@ -28,7 +26,6 @@ public class Annotations_getAnnotations_on_Field_Test {
@interface Published {
}
- @Meta
@Property(publishing = Publishing.DISABLED)
@Inherited
@Target({ ElementType.FIELD, ElementType.ANNOTATION_TYPE })
@@ -36,7 +33,6 @@ public class Annotations_getAnnotations_on_Field_Test {
@interface NotPublished {
}
- @Meta
@Published
@Inherited
@Target({ ElementType.FIELD, ElementType.ANNOTATION_TYPE })
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Method_Test.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Method_Test.java
index 1e6cade..7c9db30 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Method_Test.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Method_Test.java
@@ -11,8 +11,6 @@ import java.util.List;
import org.junit.Assert;
import org.junit.Test;
-import org.apache.isis.applib.annotation.Meta;
-
import static org.hamcrest.CoreMatchers.is;
public class Annotations_getAnnotations_on_Method_Test {
@@ -30,7 +28,6 @@ public class Annotations_getAnnotations_on_Method_Test {
Publishng publishng() default Publishng.NOT_SPECIFIED;
}
- @Meta
@DomainObj(publishng = DomainObj.Publishng.YES)
@Inherited
@Target({ ElementType.METHOD, ElementType.ANNOTATION_TYPE })
@@ -38,7 +35,6 @@ public class Annotations_getAnnotations_on_Method_Test {
@interface Published {
}
- @Meta
@DomainObj(publishng = DomainObj.Publishng.NO)
@Inherited
@Target({ ElementType.METHOD, ElementType.ANNOTATION_TYPE })
@@ -46,7 +42,6 @@ public class Annotations_getAnnotations_on_Method_Test {
@interface NotPublished {
}
- @Meta
@Published
@Inherited
@Target({ ElementType.METHOD, ElementType.ANNOTATION_TYPE })
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Parameter_Test.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Parameter_Test.java
index 15d0c3a..e2c1236 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Parameter_Test.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Parameter_Test.java
@@ -11,8 +11,6 @@ import java.util.List;
import org.junit.Assert;
import org.junit.Test;
-import org.apache.isis.applib.annotation.Meta;
-
import static org.hamcrest.CoreMatchers.is;
public class Annotations_getAnnotations_on_Parameter_Test {
@@ -30,7 +28,6 @@ public class Annotations_getAnnotations_on_Parameter_Test {
Publishng publishng() default Publishng.NOT_SPECIFIED;
}
- @Meta
@DomainObj(publishng = DomainObj.Publishng.YES)
@Inherited
@Target({ ElementType.PARAMETER, ElementType.ANNOTATION_TYPE })
@@ -38,7 +35,6 @@ public class Annotations_getAnnotations_on_Parameter_Test {
@interface Published {
}
- @Meta
@DomainObj(publishng = DomainObj.Publishng.NO)
@Inherited
@Target({ ElementType.PARAMETER, ElementType.ANNOTATION_TYPE })
@@ -46,7 +42,6 @@ public class Annotations_getAnnotations_on_Parameter_Test {
@interface NotPublished {
}
- @Meta
@Published
@Inherited
@Target({ ElementType.PARAMETER, ElementType.ANNOTATION_TYPE })
diff --git a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/types/Name.java b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/types/Name.java
index 789dd56..b2db377 100644
--- a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/types/Name.java
+++ b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/types/Name.java
@@ -5,14 +5,12 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
-import org.apache.isis.applib.annotation.Meta;
import org.apache.isis.applib.annotation.Parameter;
import org.apache.isis.applib.annotation.ParameterLayout;
import org.apache.isis.applib.annotation.Property;
import org.apache.isis.applib.services.i18n.TranslatableString;
import org.apache.isis.applib.spec.AbstractSpecification2;
-@Meta
// @Column(length = Name.MAX_LEN) // requires DN 5.x
@Property(mustSatisfy = Name.NoExclamationMarks.class, maxLength = Name.MAX_LEN)
@Parameter(mustSatisfy = Name.NoExclamationMarks.class, maxLength = Name.MAX_LEN)
--
To stop receiving notification emails like this one, please contact
['"commits@isis.apache.org" <co...@isis.apache.org>'].