public final boolean doImport()

in src/main/java/org/jetbrains/plugins/spotbugs/gui/settings/SettingsImporter.java [48:101]


	public final boolean doImport(
			@NotNull final InputStream input,
			@NotNull final AbstractSettings settings,
			@NotNull final String importFilePathKey
	) throws JDOMException, IOException {

		final Element root = JDOMUtil.load(input);
		boolean success = false;
		if (SonarProfileImporter.isValid(root)) {
			success = new SonarProfileImporter() {
				@Override
				protected void handleError(@NotNull final String message) {
					SettingsImporter.this.handleError(ResourcesLoader.getString("sonar.import.error.title"), message);
				}
			}.doImport(root, settings);
		} else {
			boolean legacy = false;
			PersistencePreferencesBean legacyPrefs = null;
			Element legacyIdea = getLegacyIdea(root);
			if (legacyIdea != null) {
				legacy = true;
				legacyPrefs = XmlSerializer.deserialize(legacyIdea, PersistencePreferencesBean.class);
			} else if (isLegacyExport(root)) {
				legacy = true;
				legacyPrefs = XmlSerializer.deserialize(root, PersistencePreferencesBean.class);
			}
			if (legacy) {
				if (legacyPrefs != null) {
					LegacyAbstractSettingsConverter.applyTo(
							legacyPrefs,
							settings,
							WorkspaceSettings.getInstance(project),
							importFilePathKey
					);
					success = true;
				} else {
					handleError(ResourcesLoader.getString("sonar.import.error.legacyInvalid.title"), ResourcesLoader.getString("sonar.import.error.legacyInvalid.text"));
				}
			} else {
				Element findBugsRoot = root;
				if (!"findbugs".equalsIgnoreCase(root.getName())) {
					findBugsRoot = getIdea(root);
				}
				if (findBugsRoot != null) {
					new SmartSerializer().readExternal(settings, root);
					success = true;
				} else {
					handleError(ResourcesLoader.getString("sonar.import.error.invalid.title"), ResourcesLoader.getString("sonar.import.error.invalid.text"));
				}

			}
		}
		return success;
	}