summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLeif Åstrand <leif@vaadin.com>2014-03-25 09:03:52 +0200
committerVaadin Code Review <review@vaadin.com>2014-03-25 11:33:17 +0000
commitdc89e28f4d8251d0b721a2b9e143770a5fcda195 (patch)
treea52b93e699d304b0218ece0450ff89cb0ad813ed
parent4379bd6368983de07c907421140499f471465408 (diff)
downloadvaadin-framework-dc89e28f4d8251d0b721a2b9e143770a5fcda195.tar.gz
vaadin-framework-dc89e28f4d8251d0b721a2b9e143770a5fcda195.zip
Trigger a checkstyle error if importing the wrong Element class (#13287)
Change-Id: Ief15e88c9c6fe5fd88dbf9f12783ac2f5ae617c6
-rw-r--r--checkstyle/import-control.xml9
-rw-r--r--checkstyle/vaadin-checkstyle.xml4
-rw-r--r--common.xml2
3 files changed, 15 insertions, 0 deletions
diff --git a/checkstyle/import-control.xml b/checkstyle/import-control.xml
new file mode 100644
index 0000000000..076dbd8a22
--- /dev/null
+++ b/checkstyle/import-control.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0"?>
+<!DOCTYPE import-control PUBLIC
+ "-//Puppy Crawl//DTD Import Control 1.1//EN"
+ "http://www.puppycrawl.com/dtds/import_control_1_1.dtd">
+
+<import-control pkg="com.vaadin">
+ <allow pkg=".*" regex="true" />
+ <disallow class="com.google.gwt.user.client.Element" />
+</import-control> \ No newline at end of file
diff --git a/checkstyle/vaadin-checkstyle.xml b/checkstyle/vaadin-checkstyle.xml
index bcbbaf9171..ca572fe1a5 100644
--- a/checkstyle/vaadin-checkstyle.xml
+++ b/checkstyle/vaadin-checkstyle.xml
@@ -142,6 +142,10 @@
<module name="IllegalImport" /> <!-- defaults to sun.* packages -->
<module name="RedundantImport" />
<module name="UnusedImports" />
+ <module name="ImportControl">
+ <property name="file" value="${checkstyle.importControl.file}" />
+ <property name="severity" value="error" />
+ </module>
<!-- Checks for Size Violations. -->
diff --git a/common.xml b/common.xml
index cef335035d..59e32136b4 100644
--- a/common.xml
+++ b/common.xml
@@ -422,6 +422,7 @@
<property name="cs.dir" location="${vaadin.basedir}/checkstyle" />
<property name="cs.xml" location="${cs.dir}/vaadin-checkstyle.xml" />
<property name="cs.header-file" location="${cs.dir}/header" />
+ <property name="cs.import-control-file" location="${cs.dir}/import-control.xml" />
<taskdef resource="checkstyletask.properties" uri="antlib:com.puppycrawl.tools.checkstyle" classpathref="taskdefs.classpath" />
<target name="checkstyle">
@@ -438,6 +439,7 @@
</fileset>
<formatter type="xml" toFile="${result.dir}/checkstyle-errors.xml" />
<property key="checkstyle.header.file" file="${cs.header-file}" />
+ <property key="checkstyle.importControl.file" file="${cs.import-control-file}" />
</cs:checkstyle>
</target>
</project>