*/
public class DatabaseVersion implements BatchComponent, ServerComponent {
- public static final int LAST_VERSION = 545;
+ public static final int LAST_VERSION = 546;
public static enum Status {
UP_TO_DATE, REQUIRES_UPGRADE, REQUIRES_DOWNGRADE, FRESH_INSTALL
INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('543');
INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('544');
INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('545');
+INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('546');
INSERT INTO USERS(ID, LOGIN, NAME, EMAIL, CRYPTED_PASSWORD, SALT, CREATED_AT, UPDATED_AT, REMEMBER_TOKEN, REMEMBER_TOKEN_EXPIRES_AT) VALUES (1, 'admin', 'Administrator', '', 'a373a0e667abb2604c1fd571eb4ad47fe8cc0878', '48bc4b0d93179b5103fd3885ea9119498e9d161b', '2011-09-26 22:27:48.0', '2011-09-26 22:27:48.0', null, null);
ALTER TABLE USERS ALTER COLUMN ID RESTART WITH 2;
CREATE INDEX "GROUP_ROLES_ROLE" ON "GROUP_ROLES" ("ROLE");
-CREATE UNIQUE INDEX "RULES_PLUGIN_KEY_AND_NAME" ON "RULES" ("PLUGIN_RULE_KEY", "PLUGIN_NAME");
+CREATE UNIQUE INDEX "RULES_REPO_KEY" ON "RULES" ("PLUGIN_NAME", "PLUGIN_RULE_KEY");
CREATE INDEX "CHARACTERISTICS_ENABLED" ON "CHARACTERISTICS" ("ENABLED");
* @since 3.6
*/
public class RuleKey implements Serializable {
+
+ public static final String MANUAL_REPOSITORY_KEY = "manual";
private final String repository, rule;
protected RuleKey(String repositoryKey, String ruleKey) {
return rule;
}
+ public boolean isManual() {
+ return MANUAL_REPOSITORY_KEY.equals(repository);
+ }
+
@Override
public boolean equals(Object o) {
if (this == o) {
--- /dev/null
+#
+# SonarQube, open source software quality management tool.
+# Copyright (C) 2008-2014 SonarSource
+# mailto:contact AT sonarsource DOT com
+#
+# SonarQube is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 3 of the License, or (at your option) any later version.
+#
+# SonarQube is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with this program; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+
+#
+# SQ 4.4
+#
+class InverseRuleKeyIndex < ActiveRecord::Migration
+
+ def self.up
+ begin
+ remove_index :rules, :name => 'rules_plugin_key_and_name'
+ rescue
+ #ignore
+ end
+ add_index :rules, [:plugin_name, :plugin_rule_key], :unique => true, :name => 'rules_repo_key'
+ end
+
+end