mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
artifact editor: disable editing for manifest files inside jars
This commit is contained in:
@@ -229,7 +229,7 @@ public class ManifestFileUtil {
|
||||
if (classpathText != null) {
|
||||
classpath.addAll(StringUtil.split(classpathText, " "));
|
||||
}
|
||||
return new ManifestFileConfiguration(path, classpath, mainClass);
|
||||
return new ManifestFileConfiguration(path, classpath, mainClass, manifestFile.isWritable());
|
||||
}
|
||||
|
||||
public static List<String> getClasspathForElements(List<? extends PackagingElement<?>> elements, PackagingElementResolvingContext context, final ArtifactType artifactType) {
|
||||
|
||||
+2
@@ -120,7 +120,9 @@ public abstract class ElementWithManifestPropertiesPanel<E extends CompositeElem
|
||||
card = "properties";
|
||||
myManifestPathField.setText(FileUtil.toSystemDependentName(myManifestFileConfiguration.getManifestFilePath()));
|
||||
myMainClassField.setText(StringUtil.notNullize(myManifestFileConfiguration.getMainClass()));
|
||||
myMainClassField.setEnabled(myManifestFileConfiguration.isWritable());
|
||||
myClasspathField.setText(StringUtil.join(myManifestFileConfiguration.getClasspath(), " "));
|
||||
myClasspathField.setEnabled(myManifestFileConfiguration.isWritable());
|
||||
}
|
||||
else {
|
||||
card = "buttons";
|
||||
|
||||
@@ -25,15 +25,20 @@ import java.util.ArrayList;
|
||||
* @author nik
|
||||
*/
|
||||
public class ManifestFileConfiguration {
|
||||
private final boolean myWritable;
|
||||
private List<String> myClasspath = new ArrayList<String>();
|
||||
private String myMainClass;
|
||||
private String myManifestFilePath;
|
||||
|
||||
public ManifestFileConfiguration(@NotNull ManifestFileConfiguration configuration) {
|
||||
copyFrom(configuration);
|
||||
myWritable = configuration.isWritable();
|
||||
myClasspath.addAll(configuration.getClasspath());
|
||||
myMainClass = configuration.getMainClass();
|
||||
myManifestFilePath = configuration.getManifestFilePath();
|
||||
}
|
||||
|
||||
public ManifestFileConfiguration(@NotNull String manifestFilePath, @Nullable List<String> classpath, @Nullable String mainClass) {
|
||||
public ManifestFileConfiguration(@NotNull String manifestFilePath, @Nullable List<String> classpath, @Nullable String mainClass, boolean isWritable) {
|
||||
myWritable = isWritable;
|
||||
if (classpath != null) {
|
||||
myClasspath.addAll(classpath);
|
||||
}
|
||||
@@ -41,17 +46,14 @@ public class ManifestFileConfiguration {
|
||||
myManifestFilePath = manifestFilePath;
|
||||
}
|
||||
|
||||
public void copyFrom(@NotNull ManifestFileConfiguration configuration) {
|
||||
myClasspath.clear();
|
||||
myClasspath.addAll(configuration.getClasspath());
|
||||
myMainClass = configuration.getMainClass();
|
||||
myManifestFilePath = configuration.getManifestFilePath();
|
||||
}
|
||||
|
||||
public List<String> getClasspath() {
|
||||
return myClasspath;
|
||||
}
|
||||
|
||||
public boolean isWritable() {
|
||||
return myWritable;
|
||||
}
|
||||
|
||||
public void setClasspath(List<String> classpath) {
|
||||
myClasspath = classpath;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user