import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.text.IDocument;
import org.eclipse.jface.text.ITextSelection;
return template;
}
- protected Configuration getConfiguration() {
+ protected Configuration getConfigurationPrefix(String prefix) {
List allConfigsList = ConfigurationManager.getInstance().getConfigurations();
ArrayList configsList = new ArrayList();
for (int i = 0; i < allConfigsList.size(); i++) {
IConfiguration temp = (IConfiguration) allConfigsList.get(i);
- if (temp.getType().startsWith(WikiEditorPlugin.PREFIX_LOAD)) {
+ if (temp.getType().startsWith(prefix)) {
configsList.add(temp);
}
}
}
return configuration;
}
+ protected Configuration getConfiguration( ) {
+ return getConfigurationPrefix(WikiEditorPlugin.PREFIX_LOAD);
+ }
public IDocument getDocument() {
IDocument doc = fEditor.getDocumentProvider().getDocument(fEditor.getEditorInput());
return doc;
}
- private String getWikiFile(IFile file) {
- return Util.getFileWikiName(file, WikiEditorPlugin.HTML_OUTPUT_PATH);
+ private static String getWikiFile(IFile file) {
+ return Util.getFileWikiName(file);
}
public void init(IWorkbenchWindow window) {
String wikiName = getWikiFile(cfile);
try {
if (fEditor != null) {
- selectWiki(wikiName);
+ selectWiki(cfile, wikiName);
}
} catch (Exception e) {
}
}
}
- private void selectWiki(String wikiName) {
+ private void selectWiki(IFile cfile, String wikiName) {
Configuration configuration = getConfiguration();
if (configuration != null && !configuration.equals("")) {
try {
String wikiLocale = configuration.getType().substring(WikiEditorPlugin.PREFIX_LOAD.length());
IWikipedia wikipediaProperties = WikiEditorPlugin.getWikiInstance(wikiLocale);
- String url = generateUrl(wikipediaProperties, configuration, configuration.getURL(), wikiName);
- String wikiContent = MediaWikiConnector.getWikiRawText(wikiName, url);
- if (wikiContent != null) {
- IDocument doc = fEditor.getDocumentProvider().getDocument(fEditor.getEditorInput());
- doc.set(wikiContent);
- }
+ // String url = generateUrl(wikipediaProperties, configuration, configuration.getURL(), wikiName);
+ // MediaWikiConnector mc = new MediaWikiConnector();
+ // String wikiContent = mc.getWikiRawText(wikiName, url);
+ // if (wikiContent != null) {
+ // IDocument doc = fEditor.getDocumentProvider().getDocument(fEditor.getEditorInput());
+ // doc.set(wikiContent);
+ // }
+ IFile[] files = new IFile[1];
+ files[0] = cfile;
+
+ Job job = new RefreshJob(wikipediaProperties, files, configuration.getURL());
+ job.setRule(null);
+ job.setUser(true);
+ job.setPriority(Job.SHORT);
+ job.schedule();
} catch (Exception e) {
e.printStackTrace();
WikiEditorPlugin.getDefault().reportError("Exception occured: ",