mirror of
https://bitbucket.org/wisemapping/wisemapping-open-source.git
synced 2024-12-23 11:53:48 +01:00
Improve detection of version in freemind.
This commit is contained in:
parent
4c3483006e
commit
1d0d907284
@ -18,10 +18,12 @@
|
||||
|
||||
package com.wisemapping.importer;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
public class VersionNumber
|
||||
implements Comparable {
|
||||
implements Comparable<VersionNumber> {
|
||||
|
||||
protected String version_d;
|
||||
|
||||
@ -58,13 +60,13 @@ public class VersionNumber
|
||||
}
|
||||
|
||||
|
||||
public int compareTo(final Object otherObject) {
|
||||
public int compareTo(@NotNull final VersionNumber otherObject) {
|
||||
if (this.equals(otherObject)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
final StringTokenizer ownTokenizer = this.getTokenizer();
|
||||
final StringTokenizer otherTokenizer = ((VersionNumber) otherObject).getTokenizer();
|
||||
final StringTokenizer otherTokenizer = otherObject.getTokenizer();
|
||||
|
||||
while (ownTokenizer.hasMoreTokens()) {
|
||||
final int ownNumber;
|
||||
@ -112,8 +114,8 @@ public class VersionNumber
|
||||
return (version_d != null ? version_d.hashCode() : 0);
|
||||
}
|
||||
|
||||
|
||||
protected StringTokenizer getTokenizer() {
|
||||
@NotNull
|
||||
private StringTokenizer getTokenizer() {
|
||||
return new StringTokenizer(this.getVersion(), ".");
|
||||
}
|
||||
}
|
||||
|
@ -96,8 +96,9 @@ public class FreemindImporter
|
||||
final Map freemindMap = (Map) JAXBUtils.getMapObject(input, "com.wisemapping.jaxb.freemind");
|
||||
|
||||
final String version = freemindMap.getVersion();
|
||||
if (version != null) {
|
||||
|
||||
if (version == null || version.startsWith("freeplane")) {
|
||||
throw new ImporterException("You seems to be be trying to import a Freeplane map. FreePlane is not supported format.");
|
||||
} else {
|
||||
final VersionNumber mapVersion = new VersionNumber(version);
|
||||
if (mapVersion.isGreaterThan(FreemindConstant.SUPPORTED_FREEMIND_VERSION)) {
|
||||
throw new ImporterException("FreeMind version " + mapVersion.getVersion() + " is not supported.");
|
||||
@ -134,11 +135,7 @@ public class FreemindImporter
|
||||
result.setTitle(mapName);
|
||||
result.setDescription(description);
|
||||
|
||||
} catch (JAXBException e) {
|
||||
throw new ImporterException(e);
|
||||
} catch (IOException e) {
|
||||
throw new ImporterException(e);
|
||||
} catch (TransformerException e) {
|
||||
} catch (JAXBException | IOException | TransformerException e) {
|
||||
throw new ImporterException(e);
|
||||
}
|
||||
return result;
|
||||
@ -330,7 +327,7 @@ public class FreemindImporter
|
||||
}
|
||||
}
|
||||
|
||||
private int getChildrenCountSameSide(@NotNull List<Object> freeChildren, Node freeChild) {
|
||||
private int getChildrenCountSameSide(@NotNull List<Object> freeChildren, Node freeChild) {
|
||||
int result = 0;
|
||||
String childSide = freeChild.getPOSITION();
|
||||
if (childSide == null) {
|
||||
@ -500,11 +497,7 @@ public class FreemindImporter
|
||||
}
|
||||
|
||||
final Boolean folded = Boolean.valueOf(freeNode.getFOLDED());
|
||||
if (folded) {
|
||||
wiseTopic.setShrink(folded);
|
||||
}
|
||||
|
||||
|
||||
wiseTopic.setShrink(folded);
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user