export project config to allow project plugins to be run from executable jars
This commit is contained in:
parent
c71b5b60d0
commit
ae122627de
|
@ -24,12 +24,13 @@
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*
|
*
|
||||||
* $Id: ExecuteJAR.java,v 1.8 2010/03/19 11:32:59 fros4943 Exp $
|
* $Id: ExecuteJAR.java,v 1.9 2010/03/19 12:34:37 fros4943 Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package se.sics.cooja.util;
|
package se.sics.cooja.util;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
import java.io.FileNotFoundException;
|
||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
@ -61,6 +62,7 @@ public class ExecuteJAR {
|
||||||
|
|
||||||
public final static String SIMCONFIG_FILENAME = "simulation.csc";
|
public final static String SIMCONFIG_FILENAME = "simulation.csc";
|
||||||
public final static String EXTERNALTOOLS_FILENAME = "exttools.config";
|
public final static String EXTERNALTOOLS_FILENAME = "exttools.config";
|
||||||
|
public final static String PROJECT_DEFAULT_CONFIG_FILENAME = "cooja_default.config";
|
||||||
public final static String FIRMWARE_SUFFIX = ".sky";
|
public final static String FIRMWARE_SUFFIX = ".sky";
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
|
@ -419,6 +421,26 @@ public class ExecuteJAR {
|
||||||
).initCause(e2);
|
).initCause(e2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Export current project configuration */
|
||||||
|
try {
|
||||||
|
ProjectConfig pConfig = gui.getProjectConfig().clone();
|
||||||
|
Enumeration<String> pValues = pConfig.getPropertyNames();
|
||||||
|
File newConfigFile = new File(workingDir, PROJECT_DEFAULT_CONFIG_FILENAME);
|
||||||
|
Properties newConfig = new Properties();
|
||||||
|
while (pValues.hasMoreElements()) {
|
||||||
|
String name = pValues.nextElement();
|
||||||
|
newConfig.setProperty(name, pConfig.getStringValue(name));
|
||||||
|
}
|
||||||
|
FileOutputStream out = new FileOutputStream(newConfigFile);
|
||||||
|
newConfig.store(out, "COOJA Project Config");
|
||||||
|
logger.info("Wrote project config: " + newConfigFile.getName());
|
||||||
|
} catch (Exception e1) {
|
||||||
|
e1.printStackTrace();
|
||||||
|
throw (RuntimeException) new RuntimeException(
|
||||||
|
"Error when writing project config: " + e1.getMessage()
|
||||||
|
).initCause(e1);
|
||||||
|
}
|
||||||
|
|
||||||
/* Delete existing META-INF dir */
|
/* Delete existing META-INF dir */
|
||||||
File metaInfDir = new File(workingDir, "META-INF");
|
File metaInfDir = new File(workingDir, "META-INF");
|
||||||
if (metaInfDir.exists() && metaInfDir.isDirectory()) {
|
if (metaInfDir.exists() && metaInfDir.isDirectory()) {
|
||||||
|
|
Loading…
Reference in a new issue