Revision 43126 trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.symbology.app/org.gvsig.symbology.app.symbolinstaller/src/main/java/org/gvsig/symbology/app/symbolinstaller/execution/SymbolInstallerExecutionProvider.java
SymbolInstallerExecutionProvider.java | ||
---|---|---|
27 | 27 |
import java.io.IOException; |
28 | 28 |
import java.io.InputStream; |
29 | 29 |
|
30 |
import org.gvsig.fmap.mapcontext.MapContextLocator; |
|
31 |
import org.gvsig.fmap.mapcontext.rendering.symbols.SymbolManager; |
|
32 | 30 |
import org.gvsig.installer.lib.api.PackageInfo; |
33 | 31 |
import org.gvsig.installer.lib.api.execution.InstallPackageServiceException; |
34 | 32 |
import org.gvsig.installer.lib.spi.InstallPackageProviderServices; |
... | ... | |
40 | 38 |
|
41 | 39 |
public class SymbolInstallerExecutionProvider extends AbstractProvider |
42 | 40 |
implements InstallPackageProvider { |
41 |
private final File symbolsFolder; |
|
43 | 42 |
|
44 |
public SymbolInstallerExecutionProvider(ProviderServices providerServices) { |
|
43 |
public SymbolInstallerExecutionProvider(ProviderServices providerServices, File symbolsFolder) {
|
|
45 | 44 |
super(providerServices); |
45 |
this.symbolsFolder = symbolsFolder; |
|
46 | 46 |
} |
47 | 47 |
|
48 | 48 |
public class InstallerSymbolsDirectoryNotFoundException extends |
... | ... | |
57 | 57 |
} |
58 | 58 |
} |
59 | 59 |
|
60 |
@Override |
|
60 | 61 |
public void install(File applicationDirectory, InputStream inputStream, |
61 | 62 |
PackageInfo packageInfo) throws InstallPackageServiceException { |
62 |
|
|
63 | 63 |
|
64 |
SymbolManager sym_man = MapContextLocator.getSymbolManager(); |
|
65 |
File symbolsDirectory = |
|
66 |
new File(sym_man.getSymbolPreferences().getSymbolLibraryPath()); |
|
67 |
|
|
68 | 64 |
try { |
69 |
if (!symbolsDirectory.exists()) {
|
|
65 |
if (!symbolsFolder.exists()) {
|
|
70 | 66 |
throw new InstallerSymbolsDirectoryNotFoundException(); |
71 | 67 |
} |
72 | 68 |
InstallerProviderManager installerProviderManager = |
... | ... | |
74 | 70 |
InstallPackageProviderServices installerProviderServices = |
75 | 71 |
installerProviderManager.createInstallerProviderServices(); |
76 | 72 |
|
77 |
installerProviderServices.decompress(inputStream, symbolsDirectory);
|
|
73 |
installerProviderServices.decompress(inputStream, symbolsFolder);
|
|
78 | 74 |
|
79 | 75 |
} catch (Exception e) { |
80 | 76 |
throw new InstallPackageServiceException(e); |
81 | 77 |
} |
82 | 78 |
} |
83 | 79 |
|
80 |
@Override |
|
84 | 81 |
public void installLater(File applicationDirectory, |
85 | 82 |
InputStream inputStream, PackageInfo packageInfo) |
86 | 83 |
throws InstallPackageServiceException, IOException { |
Also available in: Unified diff