提交 8442be14 编写于 作者: J jurgen

Maven version metadata

Former-commit-id: 3e8019f4
上级 7b8920ca
......@@ -183,6 +183,10 @@ public class MavenArtifact
return null;
}
public MavenArtifactVersion getVersion(MavenLocalVersion localVersion) {
return localVersion.getMetaData();
}
public MavenLocalVersion makeLocalVersion(String versionStr, boolean setActive) throws IllegalArgumentException {
MavenLocalVersion version = getLocalVersion(versionStr);
if (version == null) {
......
......@@ -43,11 +43,16 @@ public class MavenArtifactVersion
private List<String> licenses;
private List<MavenArtifactReference> dependencies;
public MavenArtifactVersion(MavenLocalVersion localVersion) throws IOException {
MavenArtifactVersion(MavenLocalVersion localVersion) throws IOException {
this.localVersion = localVersion;
loadPOM();
}
MavenArtifactVersion(String name, String version) {
this.name = name;
this.version = version;
}
public MavenLocalVersion getLocalVersion() {
return localVersion;
}
......
......@@ -17,7 +17,10 @@
*/
package org.jkiss.dbeaver.registry.maven;
import org.jkiss.dbeaver.Log;
import java.io.File;
import java.io.IOException;
import java.util.Date;
/**
......@@ -27,10 +30,13 @@ import java.util.Date;
*/
public class MavenLocalVersion
{
static final Log log = Log.getLog(MavenLocalVersion.class);
private MavenArtifact artifact;
private String version;
private String fileName;
private Date updateTime;
private MavenArtifactVersion metaData;
public MavenLocalVersion(MavenArtifact artifact, String version, String fileName, Date updateTime) {
this.artifact = artifact;
......@@ -55,11 +61,6 @@ public class MavenLocalVersion
return updateTime;
}
@Override
public String toString() {
return artifact.toString() + ":" + version + ":" + fileName;
}
public File getCacheFile() {
return new File(artifact.getRepository().getLocalCacheDir(), artifact.getGroupId() + "/" + fileName);
}
......@@ -67,4 +68,22 @@ public class MavenLocalVersion
public String getExternalURL(String fileType) {
return artifact.getFileURL(version, fileType);
}
public MavenArtifactVersion getMetaData() {
if (metaData == null) {
try {
metaData = new MavenArtifactVersion(this);
} catch (IOException e) {
log.warn("Error fetching POM file", e);
metaData = new MavenArtifactVersion(artifact.getArtifactId(), version);
}
}
return metaData;
}
@Override
public String toString() {
return artifact.toString() + ":" + version + ":" + fileName;
}
}
......@@ -39,6 +39,7 @@ import org.jkiss.dbeaver.ui.UIUtils;
/**
* ConnectionPageAbstract
*/
public abstract class ConnectionPageAbstract extends DialogPage implements IDataSourceConnectionEditor
{
protected IDataSourceConnectionEditorSite site;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册