Revision 986 org.gvsig.scripting/trunk/org.gvsig.scripting/org.gvsig.scripting.app/org.gvsig.scripting.app.mainplugin/src/main/java/org/gvsig/scripting/app/extension/ScriptingExtension.java
ScriptingExtension.java | ||
---|---|---|
331 | 331 |
} |
332 | 332 |
} |
333 | 333 |
|
334 |
private void addLinkToPreviousVersion(ScriptingManager manager) { |
|
335 |
|
|
336 |
String contents = "[Unit]\n" |
|
337 |
+ "type = Folder\n" |
|
338 |
+ "name = Previous version\n" |
|
339 |
+ "description =\n" |
|
340 |
+ "createdBy =\n" |
|
341 |
+ "version =\n" |
|
342 |
+ "\n" |
|
343 |
+ "[Folder]\n" |
|
344 |
+ "path = ../../org.gvsig.scripting.app.extension/scripts\n\n\n"; |
|
345 |
File previousVersion = new File(manager.getUserFolder().getFile(), "previous_version.inf"); |
|
346 |
if( !previousVersion.exists() ) { |
|
334 |
private void createLink(String name, File link, String targetPathName) { |
|
335 |
StringBuilder contents = new StringBuilder(); |
|
336 |
|
|
337 |
contents.append("[Unit]\n") |
|
338 |
.append("type = Folder\n") |
|
339 |
.append("name = ").append(name).append("\n") |
|
340 |
.append("description =\n") |
|
341 |
.append("createdBy =\n") |
|
342 |
.append("version =\n") |
|
343 |
.append("\n") |
|
344 |
.append("[Folder]\n") |
|
345 |
.append("path =").append(targetPathName).append("\n") |
|
346 |
.append("\n\n"); |
|
347 |
if( link.isDirectory() ) { |
|
348 |
link = new File(link,name+".inf"); |
|
349 |
} else if( !link.getName().endsWith(".inf") ) { |
|
350 |
link = new File( link.getPath() + ".inf"); |
|
351 |
} |
|
352 |
if( !link.exists() ) { |
|
347 | 353 |
try { |
348 |
FileUtils.writeStringToFile(previousVersion, contents);
|
|
354 |
FileUtils.writeStringToFile(link, contents.toString());
|
|
349 | 355 |
} catch (IOException ex) { |
350 |
logger.warn("Can't create ScriptingFolder file in '" + previousVersion.getAbsolutePath() + "'.", ex);
|
|
356 |
logger.warn("Can't create ScriptingFolder file in '" + link.getAbsolutePath() + "'.", ex);
|
|
351 | 357 |
} |
352 | 358 |
} |
353 | 359 |
} |
... | ... | |
356 | 362 |
ScriptingManager manager = ScriptingLocator.getManager(); |
357 | 363 |
PluginsManager pluginManager = PluginsLocator.getManager(); |
358 | 364 |
|
359 |
File home = this.getPlugin().getPluginHomeFolder(); |
|
365 |
String gvsigversion = pluginManager.getApplicationVersion().format("%M.%m.%r"); |
|
366 |
File home = FileUtils.getFile(this.getPlugin().getPluginHomeFolder(), gvsigversion); |
|
367 |
|
|
360 | 368 |
manager.setHomeFolder(home); |
361 | 369 |
|
362 |
this.addLinkToPreviousVersion(manager); |
|
370 |
this.createLink( |
|
371 |
"Previous version", |
|
372 |
manager.getUserFolder().getFile(), |
|
373 |
"../../org.gvsig.scripting.app.extension/scripts" |
|
374 |
); |
|
363 | 375 |
|
364 | 376 |
List<File> pluginsFolders = new ArrayList<>(); |
365 | 377 |
for( File f : pluginManager.getPluginsFolders() ) { |
Also available in: Unified diff