Author: chatellier Date: 2009-02-12 14:00:23 +0000 (Thu, 12 Feb 2009) New Revision: 1368 Modified: topia/trunk/topia-persistence/src/main/java/org/codelutin/topia/generator/TopiaJavaValidator.java Log: Add a check on duplicated attribute name Modified: topia/trunk/topia-persistence/src/main/java/org/codelutin/topia/generator/TopiaJavaValidator.java =================================================================== --- topia/trunk/topia-persistence/src/main/java/org/codelutin/topia/generator/TopiaJavaValidator.java 2009-02-12 11:24:15 UTC (rev 1367) +++ topia/trunk/topia-persistence/src/main/java/org/codelutin/topia/generator/TopiaJavaValidator.java 2009-02-12 14:00:23 UTC (rev 1368) @@ -1,5 +1,5 @@ /* *##% - * Copyright (C) 2008 Code Lutin + * Copyright (C) 2008, 2009 Code Lutin * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -18,6 +18,9 @@ package org.codelutin.topia.generator; +import java.util.ArrayList; +import java.util.List; + import org.codelutin.generator.models.object.ObjectModel; import org.codelutin.generator.models.object.ObjectModelAttribute; import org.codelutin.generator.models.object.ObjectModelClass; @@ -52,13 +55,13 @@ @Override protected boolean validateAttribute(ObjectModelAttribute attr) { - boolean isValid = true; + boolean isValid = super.validateAttribute(attr); // type null ou vide if (attr.getType() == null || attr.getType().isEmpty()) { isValid = false; - addError(attr, "Invalid name \"" + attr.getType() + "\""); + addError(attr, "Invalid type \"" + attr.getType() + "\""); } // name = java reserved keywords @@ -81,9 +84,23 @@ @Override protected boolean validateClass(ObjectModelClass clazz) { - // TODO test if attribute name is duplicated + boolean isValid = super.validateClass(clazz); - return super.validateClass(clazz); + // test attribute names duplication + List<String> attributesName = new ArrayList<String>(); + for(ObjectModelAttribute attr : clazz.getAttributes()) { + if(attributesName.contains(attr.getName())) { + addError(attr, "Attribute name " + attr.getName() + + " already exists"); + + isValid = false; + } + else { + attributesName.add(attr.getName()); + } + } + + return isValid; } /* @@ -92,8 +109,6 @@ @Override protected boolean validateModel(ObjectModel model) { - // TODO test if default package name is not good - return super.validateModel(model); }
participants (1)
-
chatellierï¼ users.labs.libre-entreprise.org