@@ -0,0 +1,2293 @@
+/*%0A * Copyright (C) 2004 EBI, GRL%0A * %0A * This library is free software; you can redistribute it and/or modify it under the%0A * terms of the GNU Lesser General Public License as published by the Free Software%0A * Foundation; either version 2.1 of the License, or (at your option) any later version.%0A * %0A * This library is distributed in the hope that it will be useful, but WITHOUT ANY%0A * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A%0A * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.%0A * %0A * You should have received a copy of the GNU Lesser General Public License along with%0A * this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place,%0A * Suite 330, Boston, MA 02111-1307 USA%0A */%0A%0Apackage org.ensembl.healthcheck.testcase.generic;%0A%0Aimport java.sql.Connection;%0A%0Aimport org.ensembl.healthcheck.DatabaseRegistryEntry;%0Aimport org.ensembl.healthcheck.ReportManager;%0Aimport org.ensembl.healthcheck.testcase.SingleDatabaseTestCase;%0A%0A/**%0A * Check for genes, transcripts and exons where the is_current column is%0A * anything other than 1. Any value other than 1 will cause problems for Ensembl%0A * databases.%0A */%0Apublic class IsCurrent extends SingleDatabaseTestCase %7B%0A%0A%09/**%0A%09 * Creates a new instance of IsCurrent.%0A%09 */%0A%09public IsCurrent() %7B%0A%0A%09%09addToGroup(%22post_genebuild%22);%0A%09%09addToGroup(%22release%22);%0A%0A%09%09setDescription(%22Check for genes, transcripts and exons where the is_current column is anything other than 1.%22);%0A%0A%09%7D%0A%0A%09/**%0A%09 * Run the test.%0A%09 * %0A%09 * @param dbre%0A%09 *          The database to use.%0A%09 * @return true if the test pased.%0A%09 * %0A%09 */%0A%09public boolean run(DatabaseRegistryEntry dbre) %7B%0A%0A%09%09boolean result = true;%0A%0A%09%09Connection con = dbre.getConnection();%0A%0A%09%09String%5B%5D types = %7B %22gene%22, %22transcript%22, %22exon%22 %7D;%0A%0A%09%09for (int i = 0; i %3C types.length; i++) %7B%0A%0A%09%09%09String table = types%5Bi%5D;%0A%0A%09%09%09int rows = getRowCount(con, %22SELECT COUNT(*) FROM %22 + table + %22 WHERE is_current IS NULL OR is_current != 1%22);%0A%0A%09%09%09if (rows %3E 0) %7B%0A%0A%09%09%09%09ReportManager.problem(this, con, rows + %22 %22 + table + %22s have is_current set to null or some value other than 1%22);%0A%09%09%09%09result = false;%0A%0A%09%09%09%7D else %7B%0A%0A%09%09%09%09ReportManager.correct(this, con, %22All %22 + table + %22s have is_current=1%22);%0A%0A%09%09%09%7D%0A%0A%09%09%7D%0A%0A%09%09return result;%0A%0A%09%7D // run%0A%0A%7D // IsCurrent%0A

Check that all gene, transcript and exon is_current = 1