Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 85569200C5A for ; Tue, 18 Apr 2017 17:35:31 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 83DA6160BA1; Tue, 18 Apr 2017 15:35:31 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id CB926160B90 for ; Tue, 18 Apr 2017 17:35:30 +0200 (CEST) Received: (qmail 41630 invoked by uid 500); 18 Apr 2017 15:35:30 -0000 Mailing-List: contact commits-help@cayenne.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cayenne.apache.org Delivered-To: mailing list commits@cayenne.apache.org Received: (qmail 41619 invoked by uid 99); 18 Apr 2017 15:35:30 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 18 Apr 2017 15:35:30 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id D352CDFDCD; Tue, 18 Apr 2017 15:35:29 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: ntimofeev@apache.org To: commits@cayenne.apache.org Date: Tue, 18 Apr 2017 15:35:29 -0000 Message-Id: X-Mailer: ASF-Git Admin Mailer Subject: [1/4] cayenne git commit: CAY-1891 Add To-Many / To-One Warnings to Cayenne Modeler archived-at: Tue, 18 Apr 2017 15:35:31 -0000 Repository: cayenne Updated Branches: refs/heads/master 8f2e886cd -> 11154a873 CAY-1891 Add To-Many / To-One Warnings to Cayenne Modeler Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/5a42815c Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/5a42815c Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/5a42815c Branch: refs/heads/master Commit: 5a42815c653a83559ff5d720b2e165f77f9304e4 Parents: 8f3ac8b Author: Anton Dreka Authored: Tue Apr 18 17:49:54 2017 +0300 Committer: Anton Dreka Committed: Tue Apr 18 17:49:54 2017 +0300 ---------------------------------------------------------------------- .../project/validation/DbRelationshipValidator.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cayenne/blob/5a42815c/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbRelationshipValidator.java ---------------------------------------------------------------------- diff --git a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbRelationshipValidator.java b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbRelationshipValidator.java index 5bf6d49..03caada 100644 --- a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbRelationshipValidator.java +++ b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbRelationshipValidator.java @@ -95,6 +95,20 @@ class DbRelationshipValidator extends ConfigurationNodeValidator { checkForDuplicates(relationship, validationResult); checkOnGeneratedStrategyConflict(relationship, validationResult); + checkToMany(relationship, validationResult); +} + + + private void checkToMany(DbRelationship relationship, ValidationResult validationResult) { + if (relationship != null && relationship.getReverseRelationship() != null) { + if (relationship.isToMany() && relationship.getReverseRelationship().isToMany()) { + addFailure( + validationResult, + relationship, + "Relationship '%s' and '%s' ManyToMany is impossible", + relationship.getName(), relationship.getReverseRelationship().getName()); + } + } } private void checkOnGeneratedStrategyConflict(DbRelationship relationship, ValidationResult validationResult) {