Repository: cayenne Updated Branches: refs/heads/master 42be874b7 -> 8f2e886cd
CAY-1892 Add Relationship Data Type Warning 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/da3bcddb Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/da3bcddb Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/da3bcddb Branch: refs/heads/master Commit: da3bcddb5151ccf2b80a81f3d08015e697ced7b5 Parents: 8f3ac8b Author: Anton Dreka <[email protected]> Authored: Tue Apr 18 16:25:30 2017 +0300 Committer: Anton Dreka <[email protected]> Committed: Tue Apr 18 16:25:30 2017 +0300 ---------------------------------------------------------------------- .../project/validation/DbRelationshipValidator.java | 13 +++++++++++++ docs/doc/src/main/resources/RELEASE-NOTES.txt | 1 + 2 files changed, 14 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cayenne/blob/da3bcddb/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..b865e80 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,19 @@ class DbRelationshipValidator extends ConfigurationNodeValidator { checkForDuplicates(relationship, validationResult); checkOnGeneratedStrategyConflict(relationship, validationResult); + checkTypesOfAttributesInRelationship(relationship, validationResult); + } + + private void checkTypesOfAttributesInRelationship(DbRelationship relationship, ValidationResult validationResult) { + for (DbJoin join: relationship.getJoins()) { + if (join.getSource().getType() != join.getTarget().getType()) { + addFailure( + validationResult, + relationship, + "Attributes '%s' and '%s' have different types in a relationship '%s'", + join.getSourceName(), join.getTargetName(), relationship.getName()); + } + } } private void checkOnGeneratedStrategyConflict(DbRelationship relationship, ValidationResult validationResult) { http://git-wip-us.apache.org/repos/asf/cayenne/blob/da3bcddb/docs/doc/src/main/resources/RELEASE-NOTES.txt ---------------------------------------------------------------------- diff --git a/docs/doc/src/main/resources/RELEASE-NOTES.txt b/docs/doc/src/main/resources/RELEASE-NOTES.txt index 694e754..49b028b 100644 --- a/docs/doc/src/main/resources/RELEASE-NOTES.txt +++ b/docs/doc/src/main/resources/RELEASE-NOTES.txt @@ -32,6 +32,7 @@ CAY-2277 Create ClientRuntime with ClientRuntimeBuilder just like ServerRuntime Bug Fixes: +CAY-1892 Add Relationship Data Type Warning to Cayenne Modeler CAY-2021 cdbimport: detect when same FK constraint is defined twice CAY-2077 Bug in CayenneRuntimeException using wrong specified string in Formatter CAY-2094 SelectById query doesn't work from ROP client
