Revision 468 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

View differences:

ScriptingExtension.java
34 34
import java.util.List;
35 35

  
36 36
import javax.swing.JOptionPane;
37
import org.apache.commons.io.FilenameUtils;
38 37

  
39 38
import org.gvsig.andami.IconThemeHelper;
40 39
import org.gvsig.andami.PluginServices;
......
43 42
import org.gvsig.andami.plugins.Extension;
44 43
import org.gvsig.app.ApplicationLocator;
45 44
import org.gvsig.app.ApplicationManager;
45
import org.gvsig.installer.lib.api.InstallerLocator;
46
import org.gvsig.installer.lib.api.InstallerManager;
47
import org.gvsig.installer.lib.spi.InstallerProviderLocator;
46 48
import org.gvsig.scripting.ScriptingBaseScript;
47 49
import org.gvsig.scripting.ScriptingFolder;
48 50
import org.gvsig.scripting.ScriptingHelpManager;
......
52 54
import org.gvsig.scripting.swing.api.ScriptingSwingLocator;
53 55
import org.gvsig.scripting.swing.api.ScriptingUIManager;
54 56
import org.gvsig.tools.dynobject.DynObject;
57
import org.gvsig.tools.service.spi.ProviderFactory;
58
import org.gvsig.tools.service.spi.ProviderManager;
55 59
import org.gvsig.tools.swing.api.ToolsSwingLocator;
56 60
import org.gvsig.tools.swing.api.windowmanager.WindowManager;
57 61
import org.gvsig.tools.swing.impl.windowmanager.DefaultWindowManager;
......
77 81
        } else if ("tools-scripting-composer".equalsIgnoreCase(command)) {
78 82
            DynObject preferences = this.getPlugin().getPluginProperties();
79 83
            Boolean composerUseHisWindowManager = (Boolean) preferences.getDynValue("ComposerUseHisWindowManager");
80
            JScriptingComposer composer = uimanager.createComposer();
84
            ScriptingUIManager uiManager = ScriptingSwingLocator.getUIManager();
81 85
            if (composerUseHisWindowManager.booleanValue()) {
82 86
                winmanager = new DefaultWindowManager();
83
                composer.setWindowManager(winmanager);
84
                winmanager.showWindow(composer, uimanager.getTranslation("Scripting_Composer"), WindowManager.MODE.WINDOW);
85
            } else {
86
                winmanager.showWindow(composer, uimanager.getTranslation("Scripting_Composer"), WindowManager.MODE.WINDOW);
87
                uiManager.setWindowManager(winmanager);
87 88
            }
89
            JScriptingComposer composer = uimanager.createComposer();
90
            uiManager.showWindow(composer, uimanager.getTranslation("Scripting_Composer"));
88 91

  
89 92
        } else {
90 93
            ScriptingBaseScript script = uimanager.getManager().getScript(command);
......
111 114

  
112 115
        File home = this.getPlugin().getPluginHomeFolder();
113 116
        manager.setHomeFolder(home);
114
        File home_1_0 = new File(home.getParentFile(),"org.gvsig.scripting.app.extension");
115
        File home_scripts_1_0 = new File(home_1_0,"scripts");
117
        File home_1_0 = new File(home.getParentFile(), "org.gvsig.scripting.app.extension");
118
        File home_scripts_1_0 = new File(home_1_0, "scripts");
116 119
        manager.addAlternativeUserFolder(home_scripts_1_0, "Usuario (1.0)", "Scripts de usuario (1.0)");
117 120

  
118
        List<File> pluginsFolders = new ArrayList<File>();
121
        List<File> pluginsFolders = new ArrayList<>();
119 122
        for (File f : pluginManager.getPluginsFolders()) {
120 123
            pluginsFolders.addAll(Arrays.asList(f.listFiles()));
121 124
        }
......
131 134
            }
132 135
        }
133 136
        pluginManager.addStartupTask(
134
                "ExecuteAutorunScripts", 
137
                "ExecuteAutorunScripts",
135 138
                new ExecuteAutorunScriptsOnStartup(),
136
                true, 
139
                true,
137 140
                600
138 141
        );
139 142

  
140
        /*
141
         * 
142
         ProviderManager providerManager = InstallerProviderLocator.getProviderManager();
143
         providerManager.addProviderFactory(new ScriptingInstallerProviderFactory());
144
         */
143
        manager.setPackagesFolder(pluginManager.getInstallFolder());
144
                
145
        ProviderManager providerManager = InstallerProviderLocator.getProviderManager();
146
        ProviderFactory factory = manager.getInstallerFactory();
147
        providerManager.addProviderFactory(factory);
148

  
149
        InstallerManager installerManager = InstallerLocator.getInstallerManager();
150
        installerManager.setDefaultLocalAddonRepository(
151
                manager.getRootUserFolder(),
152
                factory.getName()
153
        );     
145 154
    }
146 155

  
147 156
    public boolean isEnabled() {
......
151 160
    public boolean isVisible() {
152 161
        return true;
153 162
    }
163

  
154 164
    private static class ExecuteAutorunScriptsOnStartup implements Runnable {
155 165

  
156 166
        public void run() {
......
158 168
            th.start();
159 169
        }
160 170
    }
161
    
171

  
162 172
    private static class ExecuteAutorunScripts implements Runnable {
163 173

  
164 174
        public void run() {
......
168 178
            try {
169 179
                ScriptingHelpManager helpmanager = manager.getHelpManager();
170 180
                PluginServices plugin = pluginManager.getPlugin(this);
171
                File scriptingfolder = new File(plugin.getPluginDirectory(),"scripting");
172
                File helpfolder = new File(scriptingfolder,"help");
173
                for (File folder : helpfolder.listFiles() ) {
181
                File scriptingfolder = new File(plugin.getPluginDirectory(), "scripting");
182
                File helpfolder = new File(scriptingfolder, "help");
183
                for (File folder : helpfolder.listFiles()) {
174 184
                    File helpindex = new File(folder, "IdeHelpIndex.xml");
175 185
                    try {
176 186
                        helpmanager.addMethods(helpindex.toURI().toURL());
177
                    } catch(Exception e) {
178
                        logger.info("Can't add metothods from '"+helpindex.getAbsolutePath()+"'.",e);
187
                    } catch (Exception e) {
188
                        logger.info("Can't add metothods from '" + helpindex.getAbsolutePath() + "'.", e);
179 189
                    }
180 190
                }
181
            } catch(Exception e) {
182
               logger.info("Can't add metothods.",e);
191
            } catch (Exception e) {
192
                logger.info("Can't add metothods.", e);
183 193
            }
184
            
194

  
185 195
            List<File> pluginsFolders = new ArrayList<File>();
186 196
            for (File f : pluginManager.getPluginsFolders()) {
187 197
                pluginsFolders.addAll(Arrays.asList(f.listFiles()));
......
192 202
            for (File pluginFolder : pluginsFolders) {
193 203
                autorun_file = new File(pluginFolder, "scripting/scripts/autorun.inf");
194 204
                if (autorun_file.exists()) {
195
                    logger.info("running autorun script '"+autorun_file.getAbsolutePath()+"'.");
205
                    logger.info("running autorun script '" + autorun_file.getAbsolutePath() + "'.");
196 206
                    autorun = manager.getScript(autorun_file);
197 207
                    try {
198 208
                        autorun.run();
......
206 216
                @Override
207 217
                public FileVisitResult visitFile(Path path, BasicFileAttributes bfa) throws IOException {
208 218
                    File file = path.toFile();
209
                    if( "autorun.inf".equalsIgnoreCase(file.getName()) ) {
219
                    if ("autorun.inf".equalsIgnoreCase(file.getName())) {
210 220
                        if (file.exists()) {
211
                            logger.info("running autorun script '"+file.getAbsolutePath()+"'.");
221
                            logger.info("running autorun script '" + file.getAbsolutePath() + "'.");
212 222
                            ScriptingBaseScript autorun = manager.getScript(file);
213 223
                            try {
214 224
                                autorun.run();

Also available in: Unified diff