package com.intellij.lang.javascript.flex.actions.airpackage;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.projectRoots.Sdk;
import com.intellij.openapi.util.Pair;
import com.intellij.util.PathUtil;
import com.intellij.util.net.HttpConfigurable;
import java.io.File;
import java.util.List;
public abstract class AdtPackageTask extends AdtTask {
private long myStartTime;
private final String myPackageFilePath;
public AdtPackageTask(final Project project, final Sdk flexSdk, final String packageFilePath) {
super(project, flexSdk);
myPackageFilePath = packageFilePath;
}
protected List<String> createCommandLine() {
final List<String> command = super.createCommandLine();
final List<Pair<String, String>> proxySettings = HttpConfigurable.getInstance().getJvmProperties(false, null);
int i = 1; // after java executable
for (Pair<String, String> proxySetting : proxySettings) {
command.add(i++, "-D" + proxySetting.first + "=" + proxySetting.second);
}
return command;
}
protected File getProcessDir() {
return new File(PathUtil.getParentPath(myPackageFilePath));
}
public void start() {
myStartTime = System.currentTimeMillis();
super.start();
}
protected boolean checkMessages() {
// in this way we distinguish between errors and warnings
return new File(myPackageFilePath).lastModified() > myStartTime;
}
}