Repository: cayenne Updated Branches: refs/heads/master 960ec01ef -> a416533cb
deprecating @Auditable and @AuditableChild annotations... must be rewritten with commitlog Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/a416533c Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/a416533c Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/a416533c Branch: refs/heads/master Commit: a416533cb06a684af9422ef45a97617dbad8a81c Parents: 960ec01 Author: Andrus Adamchik <and...@objectstyle.com> Authored: Tue May 30 15:16:20 2017 +0300 Committer: Andrus Adamchik <and...@objectstyle.com> Committed: Tue May 30 15:16:20 2017 +0300 ---------------------------------------------------------------------- .../org/apache/cayenne/lifecycle/audit/Auditable.java | 13 ++++++++----- .../apache/cayenne/lifecycle/audit/AuditableChild.java | 8 +++++++- .../cayenne/lifecycle/audit/AuditableFilter.java | 8 ++++---- 3 files changed, 19 insertions(+), 10 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cayenne/blob/a416533c/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/Auditable.java ---------------------------------------------------------------------- diff --git a/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/Auditable.java b/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/Auditable.java index 6cdd2f5..5306881 100644 --- a/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/Auditable.java +++ b/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/Auditable.java @@ -27,18 +27,21 @@ import java.lang.annotation.Target; /** * An annotation that adds auditing behavior to DataObjects. - * + * * @since 3.1 + * @deprecated since 4.0. A preferred way to implement Audit functionality is via cayenne-commitlog module and + * {@link org.apache.cayenne.commitlog.CommitLog} annotation. */ @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited +@Deprecated public @interface Auditable { - /** - * Returns an array of entity properties that should be excluded from audit. - */ - String[] ignoredProperties() default {}; + /** + * Returns an array of entity properties that should be excluded from audit. + */ + String[] ignoredProperties() default {}; } http://git-wip-us.apache.org/repos/asf/cayenne/blob/a416533c/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableChild.java ---------------------------------------------------------------------- diff --git a/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableChild.java b/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableChild.java index 5d0638c..ad50293 100644 --- a/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableChild.java +++ b/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableChild.java @@ -31,13 +31,19 @@ import java.lang.annotation.Target; * annotation allows to group changes in a closely related subtree of objects. Either * {@link #value()} or {@link #objectIdRelationship()} must be set to a non-empty String, * so that a processor of AuditableChild could find the parent of the annotated object. - * + * + * @{@link org.apache.cayenne.commitlog.CommitLog} annotation. * @since 3.1 + * @deprecated since 4.0. A preferred way to implement Audit functionality is via cayenne-commitlog module and + * {@link org.apache.cayenne.commitlog.CommitLog} annotation. Unfortunately cayenne-commitlog does not provide + * functionality to group changes for parent and child entities into a single event. So AuditableChild functionality + * will have to be manually reimplemented in a custom {@link org.apache.cayenne.commitlog.CommitLogListener}. */ @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited +@Deprecated public @interface AuditableChild { /** http://git-wip-us.apache.org/repos/asf/cayenne/blob/a416533c/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableFilter.java ---------------------------------------------------------------------- diff --git a/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableFilter.java b/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableFilter.java index c762e4f..50887da 100644 --- a/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableFilter.java +++ b/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/audit/AuditableFilter.java @@ -18,9 +18,6 @@ ****************************************************************/ package org.apache.cayenne.lifecycle.audit; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.ConcurrentMap; - import org.apache.cayenne.DataChannel; import org.apache.cayenne.DataChannelFilter; import org.apache.cayenne.DataChannelFilterChain; @@ -37,6 +34,9 @@ import org.apache.cayenne.map.EntityResolver; import org.apache.cayenne.map.ObjEntity; import org.apache.cayenne.query.Query; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; + /** * A {@link DataChannelFilter} that enables audit of entities annotated with * {@link Auditable} and {@link AuditableChild}. Note that this filter relies on @@ -44,7 +44,7 @@ import org.apache.cayenne.query.Query; * analyze ignored properties. * * @since 3.1 - * @deprecated since 4.0, use {@link org.apache.cayenne.lifecycle.postcommit.PostCommitFilter} + * @deprecated since 4.0, use {@link org.apache.cayenne.commitlog.CommitLogFilter}. */ @Deprecated public class AuditableFilter implements DataChannelFilter {